Analysis and deep learning modeling of sensor-based object detection data for organic motion determination in bounded aquatic environments using underwater powered systems

ABSTRACT

Techniques for analysis and deep learning modeling of sensor-based object detection data for organic motion determination in bounded aquatic environments using underwater powered systems are described, including a light disposed substantially within a recess of a boundary wall, the light being disposed substantially underwater and configured to receive power using a conduit, and a spacer ring disposed circumferentially about an opening associated with the recess, the spacer ring being configured to secure the light within the recess and to provide a channel formed in the spacer ring, the channel being configured to receive the conduit.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part application of U.S. patentapplication Ser. No. 16/443,866, filed Jun. 17, 2019 and entitled,“Analysis And Deep Learning Modeling Of Sensor-Based Object DetectionData In Bounded Aquatic Environments,” all of which is hereinincorporated by reference in its entirety for all purposes.

FIELD

The present invention relates generally to computer science, datascience, databases, sensor management, and electronic safety andsecurity systems. More specifically, techniques for analysis and deeplearning modeling of sensor-based object detection data for organicmotion determination in bounded aquatic environments using underwaterpowered systems are described.

BACKGROUND

As the fields of data networking, computer science, and data scienceexpand, various computer programs including operating systems, clientand server applications, online Internet platforms, distributed andcloud computing systems, and various other types of applications arebeing developed and deployed in increasing complexity, design, and scaleacross a wide variety of industries and sectors. There is widespreadutility for applications in various fields, including those promotinghuman health and safety. For example, thousands of people die each yearin drowning-related accidents, whether in natural (e.g., oceans, seas,lakes, rivers, streams, ponds, or the like) or artificial bodies ofwater (e.g., reservoirs, swimming pools, diving tanks, wading pools andponds, or the like). Yet, conventional techniques have not prevented theoccurrence of such incidents, which often remain unnoticed or undetecteduntil after someone has drowned.

Conventional techniques for detecting drowning have not beenparticularly successful due to a variety of factors. Problematically,conventional techniques are often technically limited, inaccurate,inferior due to limitations of implemented equipment, or impracticallyexpensive to deploy. While some conventional techniques use sensor-basedapproaches, these systems are unable to distinguish various featuressuch as pool walls, steps, bottom contours, or other fixed objects fromthose that are temporary or transient such as moving bodies in a pool.Moreover, the motion and tracking of individuals in conventionaltechniques is very difficult and sensor-based conventional solutions areeasily defeated. Further, current sensor-based approaches are oftentechnically limited as input received from conventional systems is oftennot processed accurately nor input to systems sophisticated enough toperform data-processing functions that can accurately identify in-waterobjects. Conventional techniques often are unable to detect and classifyin-water objects accurately or consistently, which can lead tounfortunate exceptions and low drowning detection rates. Still further,conventional techniques can be physically difficult and expensive todeploy, often requiring additional construction for retrofittingpre-existing pools and artificially enclosed bodies of water. Further,conventional techniques suffer from numerous other defects such asequipment expense, limited ability to recognize using sensors featuresin a waterborne environment, power distribution, among other problemsthat characterize drowning detection as flawed and problematic.

Thus, what is needed is a solution for detecting objects in aquaticenvironments in order to identify and prevent drowning incidents withoutthe limitations of conventional techniques.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments or examples (“examples”) of the invention aredisclosed in the following detailed description and the accompanyingdrawings:

FIG. 1A illustrates an exemplary system for analysis and deep learningmodeling of sensor-based detection data in bounded aquatic environments;

FIG. 1B illustrates an exemplary classifier module for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 1C illustrates an exemplary block modular architecture for analysisand deep learning modeling of sensor-based detection data for organicmotion determination in bounded aquatic environments;

FIG. 2 illustrates another exemplary system for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 3A illustrates an exemplary sensor arrangement in a system foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 3B illustrates an alternative exemplary sensor arrangement in asystem for analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments;

FIG. 4A illustrates a cross-sectional view of an exemplary system foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 4B illustrates an alternative cross-sectional view of an exemplarysystem for analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments;

FIG. 5A illustrates a top view of an exemplary system for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 5B illustrates an alternative top view of an exemplary system foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 6A illustrates an exemplary sensor array for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 6B illustrates an alternative exemplary sensor array for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 7A illustrates an exemplary local system for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 7B illustrates an alternative exemplary local system for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 8 illustrates a perspective view of an exemplary hub for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 9A illustrates a front view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 9B illustrates a rear view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 10A illustrates a right side view of an exemplary hub for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 10B illustrates a left side view of an exemplary hub for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 10C illustrates a top view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 10D illustrates a bottom view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 11A illustrates a perspective view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 11B illustrates a front view of an exemplary tile unit for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 11C illustrates a rear view of an exemplary tile unit for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 12A illustrates a right side view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 12B illustrates a left side view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 13A illustrates a bottom view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 13B illustrates a top view of an exemplary tile unit for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 14 illustrates a perspective view of a light unit for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 15 illustrates a front view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 16 illustrates a rear view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 17A illustrates a right side view of a light unit for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 17B illustrates a left side view of a light unit for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 18A illustrates a top view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 18B illustrates a bottom view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 19 illustrates a perspective view of a dual exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 20 illustrates an exemplary application architecture for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 21 illustrates an exemplary state diagram for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 22 illustrates an exemplary process for analysis and deep learningmodeling of sensor-based detection data in bounded aquatic environments;

FIG. 23 illustrates an alternative exemplary process for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 24A illustrates an exemplary calibration process for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments;

FIG. 24B illustrates an exemplary process for segmentation of bodies ofwater for analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments;

FIG. 24C illustrates an exemplary process for mapping aquaticenvironments for analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments;

FIG. 25A illustrates an exemplary process for background subtraction inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 25B illustrates a further exemplary process for backgroundsubtraction in analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments;

FIG. 25C illustrates an exemplary process for water surfaceclassification in analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments;

FIG. 26A illustrates an exemplary process for detection andclassification of bodies in analysis and deep learning modeling ofsensor-based detection data in bounded aquatic environments;

FIG. 26B illustrates a further exemplary process for classification inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 26C illustrates yet another exemplary process for classification inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments;

FIG. 27A illustrates an exemplary graphical representation of motionfeatures generated in analysis and deep learning modeling ofsensor-based detection data for organic motion determination in boundedaquatic environments;

FIG. 27B illustrates another exemplary graphical representation ofirregular motion features depicting organic motion as generated usingtechniques for analysis and deep learning modeling of sensor-baseddetection data for organic motion determination in bounded aquaticenvironments;

FIG. 28A illustrates an exemplary process for deep learningclassification in analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments;

FIG. 28B illustrates another exemplary process for deep learningclassification in analysis and deep learning modeling of sensor-baseddetection data for organic motion determination in bounded aquaticenvironments;

FIG. 29 illustrates an exemplary computing system suitable for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments;

FIG. 30A illustrates a front view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 30B illustrates a rear view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 30C illustrates a top view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 30D illustrates a bottom view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 30E illustrates a right view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 30F illustrates a left view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 30G illustrates a perspective view of an exemplary spacer ring usedin analysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 31A illustrates a front view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 31B illustrates a rear view of an exemplary spacer ring mountingbracket used in analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments using underwater poweredsystems;

FIG. 31C illustrates a top view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 31D illustrates a bottom view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 31E illustrates a right view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 31F illustrates a left view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems;

FIG. 31G illustrates a perspective view of an exemplary hook adapterused in analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments using underwater powered systems;and

FIG. 32 illustrates a rear view of an exemplary spacer ring coupled to ahook adapter for use in analysis and deep learning modeling ofsensor-based detection data in bounded aquatic environments usingunderwater powered systems.

DETAILED DESCRIPTION

Various embodiments or examples may be implemented in numerous ways,including as a system, a process, an apparatus, a user interface, or aseries of program code or instructions on a computer readable mediumsuch as a storage medium or a computer network including programinstructions that are sent over optical, electronic, electrical,chemical, wired, or wireless communication links. In general, individualoperations or sub-operations of disclosed processes may be performed inan arbitrary order, unless otherwise provided in the claims.

A detailed description of one or more examples is provided below alongwith accompanying figures. This detailed description is provided inconnection with such examples, but is not limited to any particularexample. The scope is limited only by the claims and numerousalternatives, modifications, and equivalents. Numerous specific detailsare set forth in the following description in order to provide athorough understanding. These details are provided for the purpose ofillustrating various examples and the described techniques may bepracticed according to the claims without some or all of these specificdetails. For clarity, technical material that is known in the technicalfields and related to the examples has not been described in detail toavoid unnecessarily obscuring the description or providing unnecessarydetails that may be already known to those of ordinary skill in the art.

As used herein, “system” may refer to or include the description of acomputer, network, or distributed computing system, topology, orarchitecture using various computing resources that are configured toprovide computing features, functions, processes, elements, components,or parts, without any particular limitation as to the type, make,manufacturer, developer, provider, configuration, programming orformatting language, service, class, resource, specification, protocol,or other computing or network attributes. As used herein, “software” or“application” may also be used interchangeably or synonymously with, orrefer to a computer program, software, program, firmware, or any otherterm that may be used to describe, reference, or refer to a logical setof instructions that, when executed, performs a function or set offunctions within a computing system or machine, regardless of whetherphysical, logical, or virtual and without restriction or limitation toany particular implementation, design, configuration, instance, orstate. Further, “platform” may refer to any type of computer hardware(hereafter “hardware”) and/or software using one or more local, remote,distributed, networked, or computing cloud (hereafter “cloud”)-basedcomputing resources (e.g., computers, clients, servers, tablets,notebooks, smart phones, cell phones, mobile computing platforms ortablets, and the like) to provide an application, operating system, orother computing environment, such as those described herein, withoutrestriction or limitation to any particular implementation, design,configuration, instance, or state. Distributed resources such as cloudcomputing networks (also referred to interchangeably as “computingclouds,” “storage clouds,” “cloud networks,” or, simply, “clouds,”without restriction or limitation to any particular implementation,design, configuration, instance, or state) may be used for processingand/or storage of varying quantities, types, structures, and formats ofdata, without restriction or limitation to any particularimplementation, design, or configuration.

As described herein, structured and unstructured data may be stored invarious types of data structures including, but not limited todatabases, data repositories, data warehouses, data stores, or otherdata structures and facilities configured to manage, store, retrieve,process calls for/to, copy, modify, or delete data or sets of data(i.e., “datasets”) in various computer programming languages and formatsin accordance with various types of structured and unstructured databaseschemas such as SQL, MySQL, NoSQL, DynamoDB™ or others, such as thosedeveloped by proprietary and open source providers like Amazon® WebServices, Inc. of Seattle, Wash., Microsoft®, Oracle®, Salesforce.com,Inc., and others, without limitation or restriction to any particularschema, instance, or implementation. Further, references to databases,data structures, or any type of data storage facility may include anyembodiment as a local, remote, distributed, networked, cloud-based, orcombined implementation thereof. In some examples, data may be formattedand transmitted (i.e., transferred over one or more data communicationprotocols) between computing resources using various types of wired andwireless data communication and transfer protocols such as HypertextTransfer Protocol (HTTP), Transmission Control Protocol (TCP)/InternetProtocol (IP), Internet Relay Chat (IRC), SMS, text messaging, instantmessaging (IM), WiFi, WiMax, or others, without limitation. As describedherein, disclosed processes implemented as software may be programmedusing Java®, JavaScript®, Scala, Perl, Python™, XML, HTML, and otherdata formats and programs, without limitation. As used in this DetailedDescription, references to layers of an application architecture (e.g.,application layer or data layer) may refer to a stacked layerapplication architecture such as the Open Systems Interconnect (OSI)model or others.

FIG. 1A illustrates an exemplary system for analysis and deep learningmodeling of sensor-based detection data in bounded aquatic environments.Here, system 100 includes application 102, general processing unit (GPU)104, body detector/3D (i.e., 3-dimensional) location module 106, deeplearning module 108, central processing unit (CPU) 110, tracking module112, communication module 114, power module 116, alarm/hub module 118,state estimator 120, classifier 122, data bus 124, sensor 126, sensordata 128, model data 130, background data 132, tracking data 134,clients 136-140, alarm 142, sensor 144, hub 146, tracking data 148,background data 150, model data 152, sensor data 154, and network 156.In some examples, application 102 may be implemented as a software-basedprogram configured to implement one or more of the processes describedherein. Application 102 may also be implemented as a standalone ordistributed application, for example, with one or more of sub-modules104-122 being hosted locally, remotely, or in a distributed topology(e.g., software-as-a-service (i.e., “SaaS”), using a computing cloud,networked servers, or any other type of topology using differentcomputing components on which one or more of sub-modules 104-122 arehosted, served, or otherwise made available to application 102). Here,sub-modules 104-122 of application 102 are in data communication witheach other using data bus 124, which may be direct, local, remote,wired, wireless, distributed, virtual, or any other type of connectionthat permits data communication between sub-modules 104-122.

Here, graphics processing unit (“GPU”) 104 may be implemented to performvarious processes (executed as software, firmware, circuitry, or acombination thereof) such as those described herein. For example, GPU104 may be configured to perform processes for detection and association(i.e., correspondence between detected objects (e.g., head and body(i.e., for an adult, child, or animal) corresponding or associated witha given individual person, above and below water detected elements thatare associated with the same object, or the like) of objects using thetechniques described herein. In some examples, one or more deep learning(i.e., of various types based on neural networks, probabilistic,inference-based, and other types of algorithms, without limitation orrestriction) and/or machine learning algorithms, software, or the likemay be implemented to develop and reference (i.e., during processing ofsensor data 128 and/or 154 received from sensors 126 and/or 144) modelsthat may be used by GPU 104 to perform various processes such asdetection, association, background subtraction, identification offoreground features or objects, performing analysis or processing toidentify particular features, surfaces, objects, structures, motions, orthe like in order to detect (i.e., sense) various above and below waterdetected objects. Application 102 may be configured to perform varioustypes of data analysis using, for example, deep or machine learningalgorithms or models (collectively referred to as “models” herein). Dataanalysis or data analytics may refer to any type of process performed onany data (e.g., sensor data 128 and/or 154) accessible or input toapplication 102, in some examples. In other examples, data analytics maybe provided by using data retrieved from sources external to application102 and are not limited to the examples shown and described. As usedherein, “image” may refer to a still, moving, video, three dimensional(“3D”), or any other type of image, regardless of form, format, ormedia. Also as used herein, “objects” may refer to person and non-personitems that are detected by sensors 126 and/or 144, for example, inaquatic environments such as those described herein. As used herein, anytype of deep learning algorithm may be used and, in some examples,multiple or different deep learning algorithms may be used and trainedto perform processes such as detection, association, identification, orothers, by referencing data found in one or more of sensor data 128 or154, model data 130 or 152, background data 132 or 150, and/or dataretrieved from one or more of clients 136-140. As shown and describedherein, various resources (e.g., clients 136-140 (e.g., desktop 136,mobile devices such as smart phone (“smart phone”) 138 or computingtablet (“tablet”) 140), alarm 142, sensor 144, and hub 146) may also benetworked resources (i.e., resources that are coupled to or in datacommunication with one or more elements of system 100) using a datanetwork such as network 156. Any type of data communication links,wired, wireless, chemical, optical, line-of-sight, radiating, or thelike, may be used and are not limited to any specific implementation. Insome examples, machine learning algorithms may be used along with or inaddition to deep learning algorithms in order to develop a large datasetthat may be used by detection, association, identification, or otherprocesses such as those described herein. In other examples, dataobtained from in-water, above-water, or below-water placed (i.e.,“placed” may be used interchangeably with “disposed,” “positioned,”“emplaced,” or “implemented,” without limitation) sensors 126 and 144may also sense or detect (these terms may be used interchangeably)images, video, data, or any other type of input, including, but notlimited to electrical, thermal, acoustic, audio, optical, haptic, orother types, without limitation. Sensors 126 and/or 144 may beimplemented using various types of technologies such as RGB (i.e., Red,Blue, Green color-channel sensing), NIR (i.e., Near Infrared), infrared,thermal, thermal infrared, or others, without limitation or restriction.Due to differences in above-water and underwater (i.e., gaseous andliquid) environments or media in which sensors 126 and/or 144 may beplaced, different types of sensing technology may be implemented. Forexample, sensors 126 and/or 144 may be implemented, above andunderwater, solely above water, or solely underwater, using a wide-anglelens, aperture, filter, polarizer, and, for sensing (i.e., detecting) atnight or in other low-light environments, various types of light sourcesfor night illumination such as incandescent, halogen, chemical, lightemitting diode-based (hereafter “LED) lighting such as blue LEDs fornight illumination for underwater (i.e., liquid) sensors and infraredLEDs for night illumination for above-water (i.e., gaseous ornon-liquid) illumination. In some examples, these features may bereferred to, individually or collectively, as an “optical feature” or“optical features,” respectively. As used herein, “camera” may refer toany type of image capture device using, in some examples, one, some, ornone of the immediately described features (e.g., wide-angle lens,aperture, filter, polarizer, and, for sensing (i.e., detecting) at nightor in other low-light environments, various types of light sources fornight illumination such as incandescent, halogen, chemical, lightemitting diode-based (hereafter “LED) lighting such as blue LEDs fornight illumination for underwater (i.e., liquid) sensors and infraredLEDs for night illumination for above-water (i.e., gaseous ornon-liquid) illumination, or others, without limitation orrestriction)). In some examples, the use of multiple cameras may beimplemented to capture not only a single image, but also video and 3Ddata. In other examples, multiple systems 100 in data communication witheach other (not shown) may be implemented to capture video and 3D dataand configured to process and function collaboratively. As an example, alarge body of water such as a large, irregularly shaped hotel or resortpool may require the use of multiple systems (e.g., application 102) toensure drowning detection capabilities over the entire body. Othercolors and color-channels may be used and are not limited to theexamples provided herein. In some example, sensors 126 and/or 144 may beimplemented to capture still images, continuous video feeds, short videoclips (i.e., tracklets), motion-activated video or still images (i.e.,the sensors may be using optical cameras, as an example, to capturestill images or videos when motion is detected in an aquaticenvironment; whether above-water or underwater), and others. Further,mechanisms may be implemented with sensors 126 and/or 144 (either orboth of which may be implemented above-water or underwater) to rotatefilters, polarizers, imagers, or the like to control exposure,sensitivity, or other photographic attributes of captured signals, data,images, video, or the like. As used herein, video may include images,that consist of still images and/or video-based captured imagery, whichcould include continuous video, motion-activated video capture, ortracklets, as described above. Sensors 126 and/or 144, in some examples,may also be configured using one or more implementations and system 100is not limited to solely one or two sensors. While sensors 126 and 144are shown as having direct and indirect (e.g., networked via network156), respectively, data communication links with application 102, theexample shown is not intended to limit the number, type, or topology inwhich application 102 is coupled (i.e., directly or indirectly, wired orwireless, or the like) to sensors 126 and/or 144. Further, sensors 126and/or 144 may also be implemented as sensor arrays (e.g., a sensor bodymay include multiple types of sensors or multiple sensors of a singletype, or the like). For example, multiple sensors, sensor arrays, ormechanisms for rotating polarizers, filters, imagers, or the like, maybe implemented to adjust the field of view of each sensor (e.g. sensors126 and/or 144) in order to capture more fully a body of water such as aswimming pool, as an example. As another example, multiple opticalsensors (e.g., cameras) may be used to implement sensors 126 and/or 144as a single virtual camera with a large aperture configured to sense alarge area of an aquatic environment, as discussed in greater detailbelow. In other examples, sensors 126 and/or 144 may be implemented ascameras having wide-angle lenses and apertures that permit wide fieldsof view (e.g., 160 to 180 degrees relative to an axis of a surface onwhich sensors 126 and/or 144 are placed). Placement, calibration,implementation, and other aspects and attributes of sensors 126 and/or144 are discussed in greater detail below.

Here, data obtained from sensors 126 or 144 may be in various forms andformats such as analog, wave, optical, digital, or the like, withoutlimitation or restriction to any particular type of implementation. Insome examples, sensor 126 or 144 may be configured to obtain opticalimages using variable or wide angle aperture camera that capture still,video, moving, or other types of optical input that may be processed byGPU 104 and central processing unit (“CPU”) 110 for various tasks suchas those described above and others (e.g., object tracking, imagereconstruction, background subtraction, foreground identification ofobjects (i.e., persons vs. non-persons), and others (which may be storedas tracking data 134 or 148). Input captured by sensors 126 and/or 144may be in analog forms that are converted into data (e.g., analog ordigital) locally or transmitted to other modules managed and/orarbitrated by communication module 114. In other examples, activeillumination-based sensors may be implemented for sensors 126 and/or 144using techniques such as light detection and ranging (hereafter“LIDAR”), those that generate light curtains (i.e., breaking a lightcurtain generated by one or more of sensors 126 and/or 144 can result indetecting various objects when one or more beams of light projectedwithin a light curtain are intercepted or interrupted by an object(s)),and others, without limitation. Examples of techniques that may be usedinclude programmable triangulating light curtains, light sheetfluorescence microscopy, rotating light sheets configure to move insynchrony with designated rows in one or more cameras implemented assensors 126 and/or 144, among other techniques for propagating light inpatterns, waves, beams, dwells, or the like where interruptions of thesepropagation techniques can be used by sensors 126 and/or 144 to detectobjects.

Other modules that may receive sensor input, regardless of form orformat, and convert to data include GPU 104, CPU 110, or other elementsof system 100. For example, GPU 104 or CPU 110 may be implemented on oneor more of clients 136-140 or another (e.g., a remotely hosted server orcomputing cloud (hereafter “cloud”) comprised of one or more physical orvirtual computing resources). Regardless, data converted from inputsdetected or received by sensors 126 and/or 144 may be stored in sensordata 128 and/or 154 and used by GPU 104, CPU 110, or other modules suchas body detector/3D location module 106, deep learning module 108,tracking module 112, state estimator 120, or classifier 122 to performother processes such as those described herein and below in greaterdetail. Sensor data 128 may be further processed to identify backgrounddata (e.g., data associated with background features of an aquaticenvironment such as walls, bottom surfaces and contours, steps,underwater obstructions, or other features) that is stored in a databasefor background data 132. Identifying background features and subtractingthese from captured images and/or video enable system 100 to furtheridentify foreground features and objects such as floating inanimateobjects, persons, animals, or the like by transferring data to othermodules configured to perform various processing functions.

For example, body detector/3D location module 106 may be configured touse input (e.g., data from sensor data 128 and/or 144) to detect andidentify body(s), body parts, and the positioning thereof in athree-dimensional (“3D”) space such as within a body of water. As usedherein, a body of water may refer to any type of aquatic environment. Insome examples, aquatic environments may include oceans, seas, lakes,f_(j)ords, channels, canals, ponds, pools, or any other type of naturalor artificial structure containing water, aqueous liquids, or the like.As used herein, aquatic environments can refer to swimming pools and thetechniques described can be used for practical applications such asdetection of persons within the environments and track them with theeventual goal of detecting a drowning state and activating (i.e.,triggering, sounding, enabling, turning on, or otherwise causing) analarm, which may be audible, optical, light-based, vibration-based,haptic, or of any other type, without limitation or restriction.

Referring back to the body detector/3D location module 106, input fromsensors 126 and/or 144 may be input to one or more deep learningalgorithms developed as software and/or firmware-related components ofsystem 102 and managed by deep learning module 108. For example, bodydetector/3D location module 106 may include other algorithms, software,or firmware that, working cooperatively with deep learning module 108when instructed or called by GPU 104, is used to detect whether a bodyis present in a body of water and, if so, what body parts have beendetected and the location of said body and/or body parts within the 3Dspace of an aquatic environment. Different body parts may also beassociated to a given person by body detector/3D location module 106. Inother examples, body detector/3D location module may also be used todetect and associate above-water with underwater parts of non-personobjects that may be within a bounded aquatic environment (e.g., poolfloats or toys, chlorinating pool floats, debris skimmers such as thosefound in swimming pools, flotsam, jetsam, partially-submerged orpartially-immersed objects, or the like). If bounded (i.e., “bounded”may refer to a fully or partially enclosed space in which an aquaticenvironment is provided or found, such as a swimming pool, canal, divingtank, wading pool, or the like), body detector/3D location may, forexample, detect when bodies have entered a body of water (as usedherein, “body of water” may be used and refer to “aquatic environment”interchangeably without limitation or restriction) and at what 3Dposition of said body of water the object has been detected relative tothe positions and fields of view sensed by sensors 126 and/or 144. Deeplearning module 108 may be called to compare images, for example, frommodel data 130 or 152 to analyze input from sensors 126 and/or 144 toprovide further data input to body detector/3D location module 106. If abody has been detected and a position determined by body detector/3Dlocation module 106, then CPU 110, tracking module 112, and classifier122 (as described in greater detail below) may be called or otherwiseused to identify and track bodies or non-person objects. As used herein,bodies may refer to any size, shape, or type of living, animate,ambulating organism such as a human or animal (e.g., cat, dog, bird,goat, cow, deer, wolf, and others, without limitation or restriction).

In some examples, tracking may be established and managed by CPU 110 andtracking module 112 of detected person and non-person objects for usesby one or more of sub-modules 104-122 of application 102. In otherexamples, data from tracking module 112 may be stored in one or more ofsensor data 128 or 154, model data 130 or 152, background data 132 or150, tracking data 134 or 148, or other databases. For example, otherdatabases, local or remote (e.g., cloud-based), may be provided toexclusively store tracking data from CPU 110 and tracking module 112. Insome examples, tracking module 112 may be configured to manage trackingdata that is processed by or generated from GPU 104 or CPU 110. As anexample, when persons enter or leave a pool, tracking module 112 may beconfigured to delete a tracking record associated with said person orcreate a new tracking record for a person entering a pool. Trackingmodule 112 may also be configured, in some examples, to managehistorical data associated with tracking detected persons and objectsand sharing copies of said data with model data 130 and/or 152, whichcan be used to improve the accuracy of deep learning algorithms used andimplemented by deep learning module 108. Data associated with trackingmultiple individuals can be combined to track multiple individuals in agiven space (i.e., an appearance space) by fusing (i.e., combining)processed tracklets from sensors 126 and/or 144, from multiple fields ofview and, using 3D feature detection algorithms, size changes due torefraction of tracked body parts of individuals underwater can beestimated. Various types and sources of data may be used by deeplearning module 108 (which may also be implemented with or replaced byother types of machine learning algorithms) to “train” or “learn” toidentify features such as those discussed herein by using, for example,different types of comparative analysis (e.g., probabilistic,statistical, and others, without limitation or restrictions). Data ofdetected and classified items may then be tracked and data associatedwith tracking may be stored in tracking data 134 or remote, cloud-based,distributed, or otherwise networked databases such as tracking data 148.Tracking data may also be used, in some examples, to invoke stateestimator 120, which may be implemented as a software module used todetermine various states associated with given bodies (i.e., persons,animals, or the like) in a body of water, as described in greater detailbelow in connection with FIG. 21. In some examples, a drowning state maybe estimated when state estimator 120 receives data indicating sensors126 and/or 144 have detected a motionless body or head, a body or headpartially or fully submerged for a time period, motionlesseyelids/nose/mouth (i.e., eyelids are not moving or fluttering, mouth isopen, but underwater, or the like) that are motionless or submerged fora time period, a body or head lacking detected breathing (i.e., no riseor fall of a chest or torso region), or any other configuration ofdrowning that may be learned by application 102 using various types ofmodels, rules, or sensor data, without limitation or restriction. Asused herein, “motionless” may refer to the complete or partial lack ofmotion originating from a detected body, head, or portion thereof,regardless of whether motion is imparted to the detected body, head, orportion thereof by the surrounding environment. In other words,“motionless” may refer to the lack of ambulatory or voluntary motionoriginating from a detected head, body, or portion thereof. In stillother examples, drowning state estimation may be achieved by stateestimator 120 for other types of drowning configurations and are notlimited to the examples described herein.

Referring back to FIG. 1A, classifier 122 may be invoked to aid inidentifying objects detected by sensors 126 and/or 144 in a body ofwater. In some examples, classifier 122 may be configured to implementsegmentation of captured images and videos from sensors 126 and/or 144.For example, classifier 122 may be configured to classify features ofdetected objects into person and non-person classes, which may includepose detector features, body part size and shape features, and thermalintensity differentials. By using deep or machine learning algorithmssuch as those implemented by deep learning module 108 (which can betrained against various types and groups of data (e.g., model data130)), non-person objects can be identified apart from persons detectedin an aquatic environment such as a swimming pool by segmenting capturedimages and video. As used herein, “deep learning” may include machinelearning models, both of which may refer to data models and algorithmsthat are used to process various types of input data to perform otherprocesses and functions such as those described herein or others.Collectively, “deep learning” and “machine learning” may be referred toas “models.”

In some examples, segmented images and video may be referred to astracklets and can be used to learn (i.e., using deep learning module108) to associate certain detected features with a given person. Infurther examples, classifier 122 may rely upon modeling provided by deeplearning module 108 to determine whether a detected object should beclassified as a person or non-person object, is moving or still, isfully or partially submerged or immersed, if a person, whether a head ofsaid person is below or above water, and the like.

State estimator 120, in some examples, in data communication with one ormore of body detector/3D location module 106, tracking module 112,classifier module 122, and alarm/hub module 118 may be configured toassign, correspond, and track various states of a detected object. Ifstate estimator 120 indicates that a detected object is a person and ahead corresponding to a body of said person is below water and has beensubmerged for a given period of time (e.g., 20-30 seconds), it may beconfigured to send (using a wired, wireless, optical, or other type ofdata communication link (e.g., data bus 124)) a control signal or datato alarm/hub module 118 to initiate a timer that, upon reaching a giventhreshold) activate an alarm (e.g., audible, visual, haptic, or others)to alert nearby personnel to a potential drowning event occurring. Dueto the extensive data available to deep learning module 108 usingmodeling data 130 and/or 152, patterns of behavior can be imaged,analyzed, and recognized to provide early warning of drowning activitiesthe possibility of cessation or interruption of a drowning event andsurvivability of drowning persons could be substantially increased.

As discussed above, hub 146 may be implemented as a local or remote unitthat may be configured to provide one or more of the features,functions, and processes of application 102 as described herein. Forexample, hub 146 may be used to implement an alarm (such as those typesdescribed herein) that can be triggered when a timer (not shown)initiated by state estimator 120 has met or exceeded a given threshold(i.e., a pre-specified time limit measured in hours, minutes, seconds,or fractions thereof) for a state during which a head of a bodyassociated with a person has been fully or partially submerged. In someexamples, power supplied to hub 146 may come from a variety of sources,including electrical power driven over various voltages and amperages ofdirect or alternating current (i.e., 110-115 VAC or 110-115 VAC), 220VAC, 12 VDC, 24 VDC, or others, without limitation or restriction).Power may be generated for system 100, application 102, and the elementsshown within FIG. 1A from various sources and is neither limited or norrestricted to any particular form or type. Regardless, power module 116may be implemented to manage and control power distribution to one ormore of the elements shown in system 100 such as GPU 104, CPU 110,sensors 126 and/or 144, hub 146, clients 136-140, alarm 142, or others,without limitation or restriction. Power module 116 may also beimplemented as software, firmware, circuitry, or a combination thereofto distribute, manage, enable/disable, or otherwise control thedistribution of electrical power to the above-referenced elements, amongothers. In other examples, the quantity, type, configuration, function,or structure of elements 102-156 of system 100 may be varied and are notlimited to any specific implementation, without limitation orrestriction.

FIG. 1B illustrates an exemplary classifier module for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, subsystem 160 includes classifier 122 (FIG. 1A),deep learning module interface 162, pose detector feature data 164, bodypart size and shape feature data 166, and thermal intensity differentialdata 168. In some examples, classifier 122 receives input in the form ofsensor data 170 from one or more of sensors 126 and/or 144 (FIG. 1A (notshown)). As used herein, sensor data 170 may be data that is generatedfrom processing received input to sensors 126 and/or 144. In someexamples, sensors 126 and/or 144 may receive optical signals in the formof light waves received, detected and processed by optical sensors. Inother examples, sensors 126 and/or 144 may be acoustic sensorsconfigured to detect objects based on sound (i.e., acoustic, sonar,ultrasound, and others), regardless of frequency, wavelength, andpropagation source and which may be ultimately converted to sound data.In still other examples, sensors 126 and/or 144 may be configured toreceive electrical signals that are converted from analog to digitaldata using, for example, an analog-digital converter (i.e., ADC). Instill other examples, different types of data may be input as sensordata 170, which is not limited to any specific data type, format, orschema and may include streaming data and datasets from various media.When sensor data 170 is received by classifier 122, deep learning moduleinterface 162 invokes deep learning module 108 (FIG. 1A) in order toclassify sensor data 170 into pose detector features, body part size andshape features, and thermal intensity differentials. As an example,video captured by sensors 126 and/or 144 (above water and/or underwater)are segmented by deep learning module 108 by processing sensor data 170into pose detector feature data 164, body part size and shape featuredata 166, and/or thermal intensity differential data 168. Deep learningmodule 108 may be trained against model data 172 in order to identifyclassifications for sensor data 170 that is received by classifier 122.As shown, deep learning module interface 162 may also be configured tointerface with other modules such as GPU 104 (FIG. 1A) or CPU 110 (FIG.1A) to perform other processes using sensor data 170, such as thosedescribed herein. In other examples, the quantity, type, configuration,function, or structure of system 160, classifier 122, and the elementsshown may be varied and are not limited to the descriptions provided.

FIG. 1C illustrates an exemplary deep learning system architecture foranalysis and deep learning modeling of sensor-based detection data fororganic motion determination in bounded aquatic environments. In someexamples, system 180 includes image capture module 182, head/body partsdetector 184, drowning detection and alarm module 186, pose estimationmodule 188, classifier 190, alignment block 192, all of which areconfigured to transfer data, including signals, voltages, or any othermeans, type, or format of transmitting and receiving information betweenelements 182-192, over or using data bus 194. Here, system 180 may bedesigned, implemented, and configured to perform various functionsassociated with drowning detection by using deep learning algorithms toprocess data resulting from other processes such as, for example, headdetection, body part detection, pose estimation, point estimation (ofpoints determined by coordinate determination of detected body partssuch as a head underwater), among others, without limitation orrestriction. As shown, system 180 includes image capture module 182,which may include cameras, apertures, lenses, or any type of imagecapturing device (not shown).

In some examples, image capture module 182 may refer to a single ormultiple camera system in which cameras may be placed at various pointsabout a bounded aquatic environment (e.g., swimming pool, lake, pond,harbor, bay, or the like, without limitation), including above awaterline (i.e., above water), below a waterline (i.e., underwater), orat a waterline. A multi-camera implementation of image capture module182 may include cameras placed not only at various points around abounded aquatic environment, but also above and underwater in order tocapture images of objects, persons, bodies, animals, or other inanimateor animate objects that may exhibit organic or inorganic motion that arefloating or partially or fully submerged. As used herein, “organicmotion” may refer to motion that originates or emanates from an animateobject such as a human or other animal that, as discussed below, whenpartially or fully submerged, may be imaged by image capture module 182and processed using one or more deep learning algorithms to determinewhether irregular motion or movement is detected and whether otherconditions are present so as to enable system 180 to determine adrowning condition exists and, if so, to trigger an alarm (such as thosedescribed herein). “Inorganic motion,” in some examples, may refer tomotion associated with an inanimate object (i.e., non-human, non-animal,non-organic, or the like) that, in some examples, does not exhibitirregular motion such as that originated or emanated from an animateobject such as a person. In other examples, organic or inorganic motionmay be described differently and is not limited to the descriptionsprovided.

Here, image capture module 182 (as well as one, some, all, or none ofelements 182-192) may be implemented using software, firmware, hardware,circuitry, or a combination thereof and configured to capture images,video, audio, or multimedia imagery, signals (e.g., electric,electronic, light/optical, and others, without limitation orrestriction), and data. Data captured may be in various image formatssuch as red-green-blue (i.e., RGB), infrared, ultraviolet, and others,without limitation or restriction. As shown, image capture module 182may be implemented to generate data that may be transferred between anyof elements 182-192 over data bus 194. Techniques such as computervision may be used to not only capture, but process data (e.g., audio,video, multimedia, still imagery, and others) from cameras placed abovewater, underwater, about a waterline, or otherwise disposed around andabout a bounded body of water. Further, image capture module 182 may bedesigned, implemented, configured, or function differently than as shownand is not limited to the examples provided.

Once captured, in some examples, images may be converted or translatedinto data that may be transmitted (i.e., sent) to one or more ofelements 184-192 over data bus 194, the latter of which may beimplemented using wired, wireless, optical, or other data transmissionmedia, without limitation or restriction. For example, images capturedby cameras or other imaging devices (not shown) may be processed byimage capture module 182 and converted into data that is transmitted toclassifier 190, which may be implemented to identify one or more motionfeatures using, in some examples, a singular or multiple deep learningalgorithms. As used herein, “motion features” may refer to any aspect,attribute, feature, function, or characteristic of data that, whenanalyzed, indicates regular or irregular motion associated with animate,inanimate, organic, or inorganic objects or persons above or underwater.Examples of motion features are described in additional detail below inconnection with FIGS. 27A-27B.

Referring back to FIG. 1C, deep learning algorithms may be used toimplement the described techniques and there are no limitations orrestrictions as to any particular instances. For example, deep learningalgorithms such as those that implement not only self-learningtechniques (i.e., evaluating input data to the algorithm againstdatabases, data lakes, or other data gathered or collected that can beused to identify, perform rapid algorithm calculations to supportmachine-made determinations about input data, or otherwise classifyinput data based on rules, conditions, or other logic provided tosupport computing operations performed by deep or machine learningalgorithms), but also those that can be used for image processing usingneural networks (e.g., artificial, convolutional, recurrent, and others)are among a few examples of algorithmic techniques that may be used toimplement classifier 120. The types of deep learning algorithms used byclassifier 190 are not intended to be limiting and may be configured toprocess data received from image capture module 182 and head/body partsdetector 184 for various purposes ranging from head detection to poseestimation to others, without limitation or restriction.

In some examples, image data from head/body parts detector 184 may begenerated by processing data received from image capture devices (e.g.,cameras, charge coupling devices, etc.) that are in direct or indirectdata communication with image capture module 182, which is transferredto head/body parts detector 184, which processes to evaluate usingcomputation determinations to identify body parts in the image datareceived. When processing and evaluating image data (i.e., data fromimage capture module 182), heads/body parts detector 184, in someexamples, identifies body parts and assigns coordinates (relative to agiven frame of reference or bounded body (e.g., bounded aquaticenvironment such as a swimming pool, dive tank, pool, pond, lake, bay,harbor, or the like, although any aquatic environment could use thetechniques described herein) to the identified parts. Once identified,the coordinates may be transmitted by head/body parts detector 184 asdata (e.g., using any type of programming, formatting, or dataprocessing language such as Java, JavaScript, MATLAB, Python, HTML,HTML5, and many others, without limitation or restriction to anyparticular language, format, or protocol) to any of elements 182-192.

For example, head/body parts detector 184 processes image data receivedfrom image capture module 182 and identifies one or more bodies that arepartially above water and partially underwater. Head/body parts detector184 then identifies parts of the body and assigns coordinates (e.g.,using any type of coordinate system for reference during computingprocesses performed by elements 182-192 of system 180), which are thentransmitted to classifier 190. In other examples, alignment block 192may also be used to process data from image capture module 182 in orderto align images captured of bodies above and below water.

In some examples, alignment block 192 may be used to account for variousimagery effects on captured images in an aquatic environment, above andunderwater. Effects such as distortion (e.g., lens, perspective,optical, and others, without limitation or restriction), scattering,absorption, and others, without limitation or restriction, may be takeninto account when aligning images in order to present a complete object(e.g., a contiguous body or shape belonging to an object, person,animal, insect, animate or inanimate object) using the techniquesdescribed herein. An aligned image (not shown) may then be processed byhead/body parts detector 184 and pose estimation module 188. In someexamples, pose estimation module 188 may be another computing processimplemented using software, firmware, hardware, circuitry, or acombination thereof.

As described herein, pose estimation may refer to various types of dataprocessing techniques (e.g., deep learning, machine learning, or otheralgorithmic techniques, without limitation or restriction) in which data(e.g., image data from image capture module 182, aligned image data fromalignment block 192, detected part data from head/body part detector184, or others) may be received and processed by pose estimation module188. For example, deep learning or machine learning algorithms such asTensorFlow™, Torch, OpenPose, and others, without limitation orrestriction, may be used to determine poses associated with variousdetected body(s) and part(s), as determined by head/body parts detector184. Trained against one or more datasets (e.g., MPII, SURREAL, orothers, without limitation or restriction), pose estimation may be intwo or three-dimensions (i.e., “2D” or “3D”) and, by evaluatingcoordinates associated with joints and parts of a body, various types ofdeterminations such as poses, movement, and features (i.e., of facial orother body parts) may be determined by pose estimation module 188. Dataassociated with these determinations may be input to classifier 190,which may be used during process to generate various computationsassociated with pose estimation, joint and body part coordinates,movement, location of body parts relative to a waterline (i.e., above,below, or at a waterline of a bounded aquatic environment), and others,without limitation or restriction.

In some examples, classifier 190 (as well as other elements 182-188,192) may be implemented using various types of software, hardware,firmware, circuitry, or combination thereof. For example, deep learning,machine learning, and other types of algorithms, without limitation orrestriction, may be implemented as computing software to transform ageneric computer, computing device, or computing environment intoclassifier 190, which is configured to receive input from elements182-188 and 192 in order to process and generate computationaldeterminations as to body and part detection, image alignment, movement,location, pose estimation, among others, and to generate a furtherdetermination as to whether the computed data indicates a detected body(i.e., a contiguous object or shape detected within a bounded aquaticenvironment) exhibits organic movement (i.e., movement emanating fromthe detected body and not from the surrounding environment impartingphysical forces acting upon an object or body). In other words,classifier 190 is not a generic computing device, module, or computer,but instead a specialized element of system 180 that, utilizing deeplearning, machine learning, or other algorithmic techniques to receivedata input (e.g., digital data, analog signals, or the like) regardingcaptured images (i.e., from image capture module 182 and alignment block192), detected body parts (i.e., from head/body parts detector 184), andestimated poses (i.e., from pose estimation module 188), and analyzethese inputs relative using machine or deep learning algorithms togenerate a coordinate-based determination that organic motion isdetected and, when compared to criteria (e.g., rules, thresholds, or thelike), also determine whether a drowning condition exists.

In some examples, if classifier 190 runs deep learning and/or machinelearning processing and, after application of criteria (e.g., rules,quantitative or qualitative thresholds, or the like), determines adrowning condition exists, further data or signals may be generated andsent by classifier 190 to drowning detection/alarm module 186. In someexamples, classifier 190 may determine whether a drowning conditionexists or, outputting data to drowning detection/alarm module 186, thelatter may generate said determination, either in combination or as astandalone output. Regardless of whether classifier 190 or drowningdetection/alarm module 186, either in combination or individually,generates a data-driven determination that a drowning condition exists,an output signal (not shown) may be generated from drowningdetection/alarm module 186 that triggers an alarm (not shown) such asthose described herein (e.g., visual, audible, haptic, or othersensory-perceptible alarm to alert nearby persons or personnel of apotential or actual drowning condition within a bounded aquaticenvironment such as a swimming pool, lake, pond, bay, harbor, or otherbody of water (or other fluid or liquid) having at least one non-liquidboundary or bounded side). In other examples, system 180 and elements182-194 may be designed, configured, or implemented differently and arenot limited to the examples shown and described.

FIG. 2 illustrates another exemplary system for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, top view 200 shows a bounded area (e.g., an aquaticenvironment such as a body of water) 202 in which system 204 isimplemented (partially above water, partially underwater, as describedin greater detail below) with at least one sensor (not shown). In someexamples, at least one or more elements of application 102 (FIG. 1A) maybe implemented with system 204. In other examples, system 204 may be animplementation of application 102 (FIG. 1A). As shown, system 204 may becoupled via data communication links 206-208 to alarms 210-212,respectively. Data communication links 206-208 may be implementing usingwired, wireless, optical, radiating, or other data communicationtechnologies in order for signals and/or data to be transferred betweensystem 204 and alarms 210-212. System 204 may also, in some examples,include one or more sensors (e.g., sensors 126 and/or 144 (FIG. 1A))that are configured to detect objects within bounded area 202. Sensors(not shown) may be implemented and detected objects may be classified asperson or non-person objects. Classifier 122 may be configured toclassify detected objects based on pose features, body part sizes orshapes, and/or thermal intensity (i.e., the thermal image of a person isconfigured to be read, detected, or sensed differently than inanimate,colder non-person objects). Once detected, classified, associated, andtracked, a determination may be made as to whether to trigger one, some,or all of alarms 210-218. In some examples, one or more of alarms210-218 may be triggered when a timer activated by system 204 reaches orexceeds a given threshold. As described in greater detail below, a timermay be set when sensor(s) (not shown) of system 204 provide input that,when processed, classifies body parts such as a body (e.g., torso,trunk, legs, appendages, and the like) and head as being associated witha person and said head is detected and tracked underwater (i.e., below awaterline) for an amount of time at or after which a drowning state isassumed to exist. A drowning state may be one of several states thatsystem 204 can transition into or through, which is described in greaterdetail below in connection with FIG. 21.

Referring back to FIG. 2, alarms 210-218 may of various types of alarms.In some examples, one or more of alarms 210-218 may be directly coupledto system 204 using wired electrical connections that, when a drowningstate is detected (i.e., a state in which a tracked person(s), triggeran audible, visual, or other perceptible alarm to alert nearbyindividuals to a potential drowning occurring. Alarms may also be, insome examples, automatically generated messages such as text (e.g.,short messaging system (“SMS”), Internet Relay Chat (“IRC”), iMessages®,or others), electronic mail (“email”), voice calls, or the like.Further, alarms may also be triggered and generate automatic calls,messages, or other signals to be sent to emergency services for medical,paramedical, fire, police, or other similar services to respond to thelocation of a prospective victim detected as being in a drowning state.In other examples, one or more of alarms 210-218 may also be in data orelectrical communication with system 204 using wireless links totransfer data and/or power (e.g., inductive, magnetic, or the like) and,likewise, are configured to provide an audible, visual, haptic,pyrotechnic, thermal, vibrational, or otherwise perceptible alarm whentriggered (i.e., when a drowning state activates a timer that reaches apre-determined threshold). In still other examples, a combination ofdifferent types of alarms may be implemented with system 204 in order toalert nearby personnel if a detected person in bounded area 202 whoseclassified body parts are tracked and a condition is detected (i.e., adrowning state) that results in sending a signal from system 204 toactivate a timer as a condition precedent to triggering an alarm. Inother examples, the quantity, type, configuration, function, orstructure of system 204 and the elements shown may be varied and are notlimited to the descriptions provided.

FIG. 3A illustrates an exemplary sensor arrangement in a system foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, view 300 is an “aerial” or top viewillustrating bounded area 302 within which field of view 304 isconfigured to be sensed (passively (i.e., awaiting detection of one ormore input stimuli, conditions, attributes, or the like) or actively(i.e., by generating from an originating sensor an output that may beused to measure or sense a return input (e.g., sonar, radar, lidar, orthe like)) by tile unit 306. Regions 308-310 fall outside of field ofview 304, but can be covered by overlapping fields of view provided byother sensors (not shown) implemented with tile unit 306, which may beplaced on different sides or surfaces of bounded area 302. “Tile unit”(e.g., tile unit 306) may refer to a unit, chassis, package, substrate,or housing configured to include one or more sensors and one or moreelements of application 102 (FIG. 1A) that are configured to performprocesses as described herein, without limitation or restriction. Insome examples, tile unit 306 may be integrated within the structure ofbounded area 302 or may be placed after a bounded area (e.g., a swimmingpool) has been constructed, as described in greater detail below. Inother examples, tile unit 306 may be implemented and configureddifferently in function and/or structure.

As an example, bounded area 302 may be a swimming pool that isrectangular in shape. A wide angle sensor or sensor array (not shown)may be implemented and co-located with system 306, which is configuredto detect objects within field of view 304. Regions 308 and 310 remainoutside of field of view 304. However, placing another system, asdescribed in greater detail below in connection with FIG. 3B enablesregions 308 and 310 to also be sensed by one or more sensors placedelsewhere in order to provide overlapping sensor coverage. In otherexamples, the quantity, type, configuration, function, or structure ofthe elements shown may be varied and are not limited to the descriptionsprovided.

FIG. 3B illustrates an alternative exemplary sensor arrangement in asystem for analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments. Here, view 320 illustrates another“aerial” or top view of bounded area 322 (e.g., an aquatic environmentsuch as a swimming pool, pond, dive tank, children's wading pool, or thelike), field of view 324, tile units 326-328, and regions 330-336. Insome examples, multiple tile units (e.g., tile units 326-328) may bepositioned in bounded area 322 to provide field of view 324 and also beconfigured to detect objects (i.e., person or non-person) in regions330-336. For example, tile unit 326 may be positioned to sense field ofview 324 and regions 334 and 336, which may be “cutout” areas (i.e.,regions not observable beyond a wide angle field of view of tile unit328). Similarly, tile unit 328 may be implemented and positioned inbounded area 322 to sense field of view 324 and regions 330 and 332. Instill other examples, different tile units having 180 degree fields ofview may be implemented, thus eliminating regions 330-336 entirelyand/or the need to use multiple tile units. Further, additional tileunits having fields of view of wide angle camera apertures that are lessthan 180 degrees, but can be placed at other points around bounded area322 to increase accuracy and efficacy of detection, classification,association, tracking, and other processes as described herein. In otherexamples, the quantity, type, configuration, function, or structure ofthe elements shown may be varied and are not limited to the descriptionsprovided.

FIG. 4A illustrates a cross-sectional view of an exemplary system foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, bounded area 400 includes side 402,bottom 404, side 406, waterline 408, tile unit 410, sensors 412-414, andfield of view boundaries 416-422. In some examples, tile unit 410 may beimplemented to provide one or more functions and processes such as thosedescribed above in connection with FIG. 1A, using sensors 412-414.Sensor 412, in some examples, may be configured to have an upper fieldof view boundary (i.e., boundary 416), and a lower field of viewboundary (i.e., boundary 418) to provide sensor coverage above waterline 408. Regions outside of boundaries 416-418 may be covered usingother tile units and sensors placed elsewhere (not shown).

Similarly, tile unit 410 may include sensor 414, which may beimplemented (e.g., positioned) below waterline 408 in order to provide afield of view coverage between boundaries 420 and 422. Once placed,sensors 412-414 may be calibrated against waterline 408 in order todetermine an interface between the air (i.e., gaseous (not shown)) andwater (i.e., liquid area bounded by waterline 408, side 402, bottom 404,and side 406) in order to calibrate for refractions and total internalreflection. Determining waterline 408 (i.e., the level of water orliquid in bounded area 400) and calibrating sensors 412-414 may be usedto determine when the head of a detected person is in close proximity tothe water surface (i.e., waterline 408). Once waterline 408 is breachedby a head of a detected person, tracking and, more importantly, statedetermination processes are performed to determine whether a timershould be activated prior to sounding an alarm (e.g., alarms 210-218(FIG. 2)). While waterline 408 may be assumed to be a planar surface(i.e., the surface of a swimming pool may be assumed to be planar whenstill), stereo reconstruction of sides 402 and 406 may be performed inorder to determine waterline 408. In other examples, as mentioned above,one or more planar homography transformation processes may be performedto determine waterline 408. In some examples, the type, configuration,function, filters, polarizers, apertures, or other hardware orsoftware-related features of tile unit 410 and sensors 412-414 may bevaried and are not limited to duplicating the same features or functionsof the other. In other words, sensors 412-414 may be different types ofsensors that are configured, for example, to sense above-water media(i.e., sensor 412) and underwater media (i.e., sensor 414). In someexamples, objects may be partially or fully submerged in liquid (e.g.,water) within bounded area 400. Sensors 412-414 may be implemented usingabove-water and underwater cameras (e.g., one type of optical sensor,but which neither limiting nor restricting in terms of implementation,design, configuration, or function) that are mounted within, on, apartfrom, or in proximity to tile unit 410. Sensor 412 may be an opticalsensor configured to detect objects (as used herein, “object” may referto a person or non-person object, animate or inanimate body, withoutlimitation or restriction) above water while also suppressingreflections of lights cast on the surface of waterline 408. Processingby one or more elements of application 102 (FIG. 1A) housed or installedin tile unit 410 may be performed in order to suppress images ofreflections obtained by sensor 412. Likewise, sensor 414 may beconfigured as another camera or optical sensor receiving imagery belowwaterline 408 and may also be configured to suppress total internalreflections from the waterline. Performing processes such as depthestimation of detected features, range estimation, associations ofdetected objects above-water with detected objects underwater (i.e.,associating a detected above-water portion of a person with a detectedunderwater portion of the same person), correspondence of detectedobjects to individual persons or non-persons, tracking of persons, andothers, may be performed by tile unit 410 using sensors 412-414. Usingreflection-suppressed views obtained from sensors 412-414 (i.e., sensorsplaced above-water and underwater (i.e., below-water)), detectedfeatures of objects within bounded area 400 can be matched and, usingdepth estimation of said features, associations of those features withdetected individual persons can be accurately performed, in someexamples. In other examples, geometric fundamental matrix constraintsmay also be used to eliminate inaccurate associations of above-water andbelow-water detected features (as used herein, “underwater” and“below-water” may be used interchangeably without difference in meaningor interpretation). Further, correspondence of features may be furtherenhanced by using one or more range scanners (not shown) with tile unit410 and calibrating these for above and below-water placement andoperation. Range information provided by range scanners (not shown) canbe used during the processing of sensory input received by sensors412-414 to improve the accuracy of associations and correspondence ofdetected features by sensors 412-414. As used herein, “association”refers to associating above-water detected features (or portionsthereof) with underwater-detected features (or portions thereof) asbeing attributable to the same person or object. “Correspondence,” asused herein, refers to the attribution of a person or non-persondetected and whose features have been associated so as to render andenable tracking of the person or non-person accurately. Correspondenceensures that application 102 (FIG. 1A) is able to accurately trackpersons or non-persons in order to assign and monitor states associatedwith each, which may be used, in some examples, to determine a potentialdrowning situation and activate one or more alarms to such condition. Instill other examples, one or more processes may be performed remote fromand not locally at tile unit 410.

Areas not falling within those bounded by boundaries 416-422 may besensed by using, for example, wide angle apertures on cameras or opticalsensors (e.g., apertures at or near 180 degrees of coverage) thatprovide fields of view at or substantially near 180 degrees along thehorizontal and/or vertical axes of placement of sensors 412-414. Inother examples, areas not falling within boundaries 416-422 may beobserved (i.e., sensed) by another tile unit having sensors (not shown)that are configured to observe and detect objects within the cutoutareas of tile unit 410 and sensors 412-414. Sensors 412-414 may becalibrated and configured to perform various processes, such as thosedescribed above in connection with FIG. 1A and elsewhere in thisdescription. For example, sensors 412-414 may be configured to map the3D space bounded by waterline 408, side 402, bottom 404, and side 406.Bottom mapping of a bounded area such as a swimming pool floor may beperformed by sensor 414 underwater (i.e., below waterline 408) usingvarious techniques such as multi-view stereo. Assumptions, in someexamples, may be made that bottom 404 has a planar surface (e.g., smoothand not an obstructed bottom contour) that can be used to regularize(i.e., normalize) calculations performed by tile unit 410 for stereoestimation. If bottom 404 is planar (i.e., smooth as with a plasteredswimming pool surface), homography transformations may be used to mapthe floor using stereo estimation. Alternatively, if bottom 404 isnon-planar (as shown below in connection with FIG. 4B), then mapping ofa bottom surface or contour may be performed using stereo reconstructionwith multiple sensors. In some examples, active illumination-basedtechniques can also be used to generate light patterns that, whenreflected back to the receptors (not shown) of sensor 414 (underwater)are used to generate a map. Illumination, as described herein, may referto point, diffuse, spread, or other patterns of lighting, withoutlimitation or restriction. Mapping, in some examples, may employ deeplearning module 108 (FIG. 1A), which references, compares, and analyzessensor data from sensor 414 against model data 130 and/or 152. Modeldata 130 and/or 152 may include data, datasets, databases, and datamodels of images of bottom contours and surfaces that, when processedagainst sensor data from sensor 414, can generate a map of bottom 404.Sensors 412-414 may be implemented as optical sensors (e.g., cameras)that can be calibrated for self-stabilization, lens placement, thermalexpansion, when tile unit 410 is placed on a wall or side of boundedarea 400 such as side 402. In other examples, the quantity, type,configuration, function, or structure of the elements shown may bevaried and are not limited to the descriptions provided.

FIG. 4B illustrates an alternative cross-sectional view of an exemplarysystem for analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments. Here, bounded area 430 is shownwith side 432, bottom 434, side 436, waterline 438, tile unit 440,sensors 442-444, and boundaries 446-452. As described above, sensors 442and 444 may be placed above and below, respectively, waterline 438 andused to perform processes similar to those mentioned above.Alternatively, bottom 434 is planar below tile unit 440, but then slopesupward (i.e., becomes non-planar) towards side 436. Instead of using ahomography transformation to map the bottom, using tile unit 440 andsensor 444, segmentation techniques in combination with deep learningmodeling provided by deep learning module 108 (FIG. 1A) and model data130 and/or 152 (FIG. 1A) may be used to map bottom 434. Specifically,bottom 434 may be segmented into two different planar (i.e., planar, butof different slope values) surfaces, both of which comprise bottom 434.Mapping may be performed by using processed input from deep learningmodule 108 (FIG. 1A), which is configured to compare images (e.g., stillimages, video, tracklets, or the like) of segments of bottom 434 to deeplearned images gathered from model data 130 and/or 152. Images ofvarious aquatic bottom surfaces (e.g., pool bottom surfaces andcontours) may be used to compare images captured by sensor 444 toidentify and map bottom 434. Further, any imagery captured by sensors442 and 444 may be saved to one or more databases (e.g., sensor data128, 154, model data 130, 152, background data 132, 150, and trackingdata 134, 148). In other examples, the quantity, type, configuration,function, or structure of the elements shown may be varied and are notlimited to the descriptions provided.

FIG. 5A illustrates a top view of an exemplary system for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, view 500 is a top view of bounded area 502 with tileunits 504-506. Each of tile units 504-506, in some examples, isconfigured with one or more sensors, such as those described herein. Asan example, if tile units 504-506 have integrated sensors that areconfigured to project a 180 degree field of view outward from the planeof the surface (e.g., pool wall) on which tile units 504-506 aremounted, bounded area 502 can be monitored for detection of objectscompletely by one of tiles units 504 or 506. In other examples, if tileunits 504-506 have less than 180 degree fields of view, placements suchas those depicted here may be used to provide overlapping coverage ofsensor fields of view. The position and placement of sensors may bevaried and are not limited to those shown. Further, the techniquesdescribed herein may be implemented using tile units 504-506 includingsensors and sensor arrays, physical and/or virtual (hereafter referredto as “sensors”), in various positions for use and operation in boundedareas of varying sizes.

FIG. 5B illustrates an alternative top view of an exemplary system foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. As an example of a non-rectangular area tobe sensed, view 510 shows bounded area 512 includes tile units 514-516.Bounded areas such as bounded area 512 may be irregular or regular insize, shape, and geometry. Bounded area 512 may be symmetrical,asymmetrical, oblong, distorted, or of any other size or shape, withoutlimitation or restriction. For purposes of illustration, bounded area512 includes tile units 514-516, which may be implemented with varyingquantities and types of sensors such as those described herein. Here,tile units 514 and 516 may be configured to provide 180 degree fields ofview as measured outward from the axial plane on which tile units514-516 are coupled (e.g., mounted, tiled, cemented, adhered, orotherwise attached, regardless of whether permanent or detachablycoupled). Further, by disposing (i.e., positioning, placing, and thelike) tile units 514-516 at substantially opposing ends of bounded area512, corresponding fields of view of sensors in each may overlap. Inother examples, the quantity, type, configuration, function, orstructure of the elements shown may be varied and are not limited to thedescriptions provided.

FIG. 6A illustrates an exemplary sensor array for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, view 600 illustrates tile unit 602, which may beplaced at waterline 604 such that sensors 606-608 are configured forabove-water sensing and sensors 610-612 are disposed below waterline 608for underwater detection. In some examples, multiple sensors may beimplemented such as sensors 606-612, but may be varied in type,function, features, and detection or sensing methods. For example,sensor 606 may be a single optical sensor, tilt-shift sensor, sensorarray, virtual sensor, virtual camera, electrical, thermal, activeillumination-based, or other type of sensor. Sensor 606 may also beconfigured to detect above-water objects as it is housed in tile unit602 above waterline 604. In some examples, sensor 608 may be used toprovide an illumination source (e.g., beam, dwell, light sheet, lightcurtain, or the like) that, when intervened or interrupted, may causesensor 606 to detect said event. In some examples, sensor 608 may alsobe used to implement an above-water range finder configured to providedepth and/or distance of detected above-water objects (e.g., above-waterbody parts or head of a person, above-water portions of a floatingobject (person or non-person), above-water objects that may beclassified as background features such as pool coping, walls, steps,tile, or the like). Further, sensor 608 may be an illumination sourcefor sensor 606 to capture images in darkness or low light conditions.For example, sensor 608 may be a red LED or other low lightlevel/illumination source for an infrared or near infrared (“NIR”)sensor that may be implemented as sensor 606. Alternatively, sensor 606may be formed or structured to have an “illumination ring” around it. Insome examples, an illumination ring may be a physical light emittingapparatus that is concentric to, disposed with, in proximity to, orotherwise implemented with sensor 606. In other examples, anillumination ring may include more than one ring or concentric circlethat is implemented with sensor 606. Still further, one or more ofsensors 606-612 may be implemented to detect motion, which may be usedas a condition for determining a state of motionless (as described ingreater detail below) and initiate a timer prior to triggering an alarmif a given threshold or time duration is met or exceeded without furtherdetecting motion or a head portion of the body surfaces (i.e., risesabove waterline 604). Other examples discussing the use of determinedstates (i.e., state estimation) to trigger alarms is discussed ingreater detail below. In yet other examples, any of sensors 606-612 maybe implemented using other detection or sensing techniques, includingaudible/audio/sound wave detection, wave (i.e., water wave disturbances)detection, thermal detection (i.e., detecting a monolithic “warm” bodycompletely submerged for a period of time without breaking the surfacefor a given time duration) or others, without limitation or restriction.

Likewise, sensor 612 may be implemented as an underwater sensorconfigured to detect and receive input below waterline 604 usingtechniques similar to those described herein. In some examples, sensor610 may be implemented as an illumination source for dark or low lightlevel conditions for sensor 612, which may be a blue LED or the like.Sensor 612 may be an infrared or NIR sensor that can be used to captureimages underwater and in dark or low light conditions. As shown here,tile unit 602 may include any type of packaging, circuitry, software,firmware, hardware, or the like to support sensors 606-612. In otherexamples, the quantity, type, configuration, function, or structure ofthe elements shown may be varied and are not limited to the descriptionsprovided.

FIG. 6B illustrates an alternative exemplary sensor array for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, tile unit 620 may include upper tile unit622, body 624, lower tile unit 626 (all of which are oriented above andbelow waterline 628), sensors 630-636, illumination sources 638-648, andrange sensors 650-652. In some examples, upper tile unit 622 and lowertile unit 626 are coupled together, as shown here, using body 624. Tileunit 620 may be disposed by placing upper tile unit 622 above waterline628 and lower tile unit 626 below waterline 628. In some examples, body624, upper tile unit 622, and lower tile unit 626 may be an integrated,monolithic “body” or package configured to house sensors 630-646,illumination sources 638-648, and range sensors 650-652. Power, in someexamples, for elements 630-652 may be provided by coupling tile unit 620to an AC or DC power source (not shown) with wiring being housed withinupper tile unit 622, body 624, and lower tile unit 626. In otherexamples, power may be provided using batteries (rechargeable orexpendable) within one or more of upper tile unit 622, body 624, orlower tile unit 626. As shown in this embodiment, power may be used toenergize one or more of sensors 630-636, illumination sources 638-648,or range sensors 650-652.

Here, sensors 630-632 may be implemented to detect objects abovewaterline 628 using, for example, various techniques such as thosedescribed above. Illumination sources 638-642 may be used to providelight sheets, light curtains, or low-light illumination for infrared orNIR sensing. Further, sensors 630-632 may be implemented as RGB(red-green-blue) color channel sensing mechanisms, thermal intensitydetectors, optical cameras (with wide angle apertures ranging from 160to 180 degrees as measured from an axis of the plane on which tile unit620 is mounted), acoustic sensors, or others, without limitation orrestriction. In some examples, sensors 630-632, when implemented ascameras or optical sensing devices, can also be disposed with or coupledto one or more filters, polarizers, apertures, or electrical-mechanicalor software/firmware based mechanisms to manage imaging features such asexposure, sensitivity, and other photographic attributes. As shown,sensors 630-632 may be cameras with wide angle apertures configured tosense wide angle (e.g., 160-180 degrees) fields of view during daylightor low light level conditions, without limitation or restriction.

Lower tile unit 626 may be configured to provide sensors 634-636, whichmay be implemented as cameras, optical sensors, or others such as thosedescribed above. Input received by any of sensors 630-636 may betransferred (e.g., copied, streamed, recorded, converted into data andtransmitted, or otherwise communicated) to other elements such asmodules 104-122 of application 102 (FIG. 1A). Here, when lower tile unit626 captures images (e.g., detects motion and begins recording and/ortransferring or transmitting said imagery) processing functions such asremoving occlusions, caustics, reflections, and refractions fromcaptured imagery (e.g., still images, video, tracklets, or the like) maybe performed by onboard processors (e.g., GPU 104, CPU 110 (FIG. 1A))that are housed within tile unit 620. Other processes that may beperformed on imagery captured by sensors 630-636 may include performingsegmentation analysis on images, videos, tracklets, or the like to mapthe bottom surface or contour of a body of water (i.e., aquaticenvironment). Still other processes may include performing initial orcontinuous calibrations of sensors 630-636 and range sensors 650-652.

In some examples, calibration may be performed on one or more of sensors630-636, illumination sources 638-648 (which may also be implemented assensors (e.g., light sheet, light curtain, or the like)), and sensors650-652. Tile unit 620 may be calibrated upon initial placement (e.g.,disposing, placing, attaching, coupling, or otherwise positioning) upona wall or surface of an aquatic environment (i.e., body of water,swimming pool, or the like)) or afterward. For example, when initiallyplaced, tile unit 620 may self-calibrate sensors 630-636, illuminationsources 638-648, and/or sensors 650-652 to compensate for adjustmentsthat may be required due to shipping misalignments or maladjustments.Examples of initial calibrating processes and activities may includeadjusting lens placement of cameras or optical sensors implemented forsensors 630-636, adjustment for thermal expansion, image stabilization,among others, without limitation or restriction. Ongoing calibration mayinclude, but is not limited to water level calibration of sensors630-636, illumination sources 638-648, and sensors 650-652. Water-levelcalibration, in some examples, may be configured to calibrate one ormore of sensors 630-636, illumination sources 638-648, and sensors650-652 to determine waterline 628 (i.e., the air-water interface wheredetection of objects entering or leaving the water is detected) and todetermine when a head of a person is in close proximity to the surfaceof the water (i.e., waterline 628). In some examples, techniques forstereo reconstruction of the sides or walls of an aquatic environmentmay be performed using segmentation techniques such as those describedherein or a planar homography transformation may be used to determinethe water level (i.e., waterline 628) for purposes of calibration foraccurate detection. In some examples, once determined, a planeassociated with waterline 628 may be projected to all cameras, opticalsensors, or other sensors such as sensors 630-636 of tile unit 620 orother sensors implemented with other tile units.

In other examples, sensors 630-636 and range sensors 650-652 may beconfigured to detect background and foreground features that areprocessed by local or remote processors (e.g., GPU 104, CPU 110 (FIG.1A)) in order to remove and classify background features such as walls,steps, filter intakes, tile coping, or other immovable or fixed featuresassociated with a body of water such as a swimming pool.

As described herein, input detected and captured by sensors 630-636 orrange sensors 650-652 may include background features of an aquaticenvironment. In other examples, one or more of sensors 630-636,illumination sources 638-648, or range sensors 650-652 may beimplemented using sensor techniques apart from those described herein,without limitation or restriction. Here, background features may includewalls, bottom surfaces and contours, steps, trees, light poles, statues,posters, furniture such as pool chairs, tables, reflections of personsoutside of the aquatic environment (e.g., persons or animals walkingaround or near the perimeter of a swimming pool), double reflections ofpersons in a pool, or the like. Using deep learning module 108 and modeldata 130/152 (FIG. 1A), background features can be processed for removalfrom a captured image feed from one or more of sensors 630-636. Forexample, processing may be performed by GPU 104 (FIG. 1A) such asdetection and association of images captured by sensors 630-636 usingdeep learning module 108 (FIG. 1A) to compare and analyze against adatabase of other images to help detect (i.e., identify) and associatedetected images (i.e., associate a head with a body of a detectedperson). CPU 110 (FIG. 1A), which may be implemented using a single ormulti-core processor, may perform complementary functions such astracking the detected/associated tracks (i.e., person or non-personobjects detected by one or more of sensors 630-636), reconstructingcaptured imagery of detected person or non-person objects, andclassifying detected objects using classifier 122, among other processesthat may be performed.

Here, when background features are detected, these may be subtractedfrom captured imagery (i.e., still images or video) by performingvarious processing functions performed by GPU 104 and/or CPU 110 (FIG.1A) including, but not limited to, reflection enhancement and removal,caustics flicker and splash removal, water surface classification, andwater distortion removal. In some examples, background subtraction maybe performed continuously on captured imagery from one or more ofsensors 630-636. As an example, when one or more of sensors 630-636detect person or non-person objects (i.e., capture imagery), processesfor removing background features may be performed on the capturedimagery, which is then stored and processed by one or more modules104-122 of application 102 (FIG. 1A). Reflection enhancement and removalmay be performed by application 102 (FIG. 1A) on images captured by tileunit 620 to 1) remove surface reflections from objected detected bysensors 630-632 at or above waterline 628 or external to the aquaticenvironment and 2) remove total or aggregate reflections caused byobjected detected by one or more of sensors 634-636 below waterline 628;both of these removals reduce the effects of the air-water interface ona body of water or aquatic environment in order to enhance capturedimagery from sensors 630-636. In other examples, polarizers (i.e.,polarizing filters) may be used on a still surface (i.e., water orliquid at waterline 628 is non-moving or moving very little) to providean optical-mechanical feature that, when used in combination withperforming a spatio-temporal analysis of pixel brightness on capturedimagery, may be used to remove reflections as a part of backgroundfeature subtraction.

Caustics and splash removal, in some examples, may be performed as partof removing background features from captured imagery of sensors630-636, by also performing a spatio-temporal analysis of pixelbrightness since caustics by nature are typically bright. Specifically,spatio-temporal analysis may be performed on tracklets (i.e., shortvideo clips taken from captured imagery or an imagery or data feed fromone or more of sensors 630-636) from multiple views (i.e., multiplesensors and/or multiple tile units like tile unit 620). Other backgroundfeature subtraction processes that may be performed include watersurface classification, which may be performed by segmenting capturedimagery from different viewpoints (i.e., different sensors and/ordifferent tile units positioned, disposed, or placed apart from tileunit 620) into 1) pixels associated with a surface of waterline 628 and2) pixels associated with underwater or other water features (e.g.,splashes, waves, ripples, and the like) of an aquatic environmentsurface. Segmentation of captured imagery, in some examples, may beperformed to classify water (i.e., liquid) surfaces by usingpolarization differentials that show differences between captured imagesat two orthogonal polarization angles, where large polarizationdifferentials may indicate water reflections whereas smallerpolarization differentials may indicate detected person or non-personobjects. Another technique for water surface classification may beperformed by analyzing thermal intensities at waterline 628 to detectand distinguish objects (i.e., person or non-person) from the surface ofwater at waterline 628. In some examples, a wet body may indicate alower thermal intensity difference when compared to a water surface. Yetanother technique for classifying water surfaces may use identified RGBor NIR features of captured imagery from one or more of sensors 630-636and, using deep learning module 108 and model data 130/152, processingsaid imagery to identify water surfaces by comparing RGB and/or NIRfeatures against deep learned models and modeled data. In otherexamples, water surface classification may be performed differently.

As another process that may be included within background featuresubtraction, water distortion removal may be performed by using anotherdeep learned or machine learned model to identify a distorted watersurface from a smooth water surface. Once identified, distortions may becorrected or ameliorated by applying captured imagery of one or more ofsensors 630-636 to a deep learned or machine learned model to removeidentified distortions, thus generated an artificial construct of smoothpool surface relative to which detected objects (person vs. non-person)may be detected, associated, classified, and tracked. In other examples,if water distortions are severe, tracklets may be selected that exhibitthe least distortion and the above-technique may be run against these.In other examples, distortion removal may be performed differently andis not limited to the examples shown and described.

In still other examples, by subtracting background features fromcaptured imagery, foreground features such as person or non-personobjects may be detected, classified, associated, and tracked by sensors630-636 and range sensors 650-652 in data communication with and workingcooperatively with one or more of elements 104-122 of application 102(FIG. 1A), as described above. In some examples, background featuresubtraction, as described above and performed by tile unit 620, may beperformed continuously. For example, the above-described processes usinginput from tile unit 620 (i.e., captured imagery from one or more ofsensors 630-652) for background subtraction may be programmed andarchitected to be run as software by application 102 on each frame ofcaptured imagery in temporal continuity (e.g., in temporal order,without gaps or missing frames, segments, sections, or other portions ofimagery). As environmental factors change (e.g., ambient lighting andillumination, temperature, in-water temperature, air temperature, andothers), the software embodying processes for background subtraction maybe varied and used interchangeably, in parallel or series, or in othermanners such that background subtraction is performed continuously oncaptured imagery from sensors 630-652. In other examples, the quantity,type, configuration, function, or structure of the elements shown may bevaried and are not limited to the descriptions provided.

FIG. 7A illustrates an exemplary local system for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, system 700 includes tile units 702-704, light unit706, conduits 708-710, above-water sensors 712-714, underwater sensors718-720, illumination source 722, and light housing 724. In someexamples, system 700 is an exemplary implementation of the techniquesdescribed herein, including processes configured to be performed by oneor more of modules 104-122 of application 102 (FIG. 1A) as integratedwith tile units 702-704 and light unit 706. As shown, tile units 702-704may be placed on surface 726 (e.g., a wall, side, or other surroundingsurface of an aquatic environment), which may be vertical, nearvertical, or otherwise sloped to a degree such that when placed, tileunits 702-704 position above-water sensors 718-720 and underwatersensors 718-720 are disposed above and below, respectively, waterline716. Data, imagery, electrical current, power, and control signals maybe transferred between tile units 702-704 and light unit 706 usingconduits 708-710, which may be implemented as waterproof, sealed,insulated, or otherwise protected from electrical, electromagnetic,corrosion, electrolysis, or other effects due to placement in an aquaticenvironment. Further, other conduits (not shown) may couple tile units702-704 and/or light unit 706 to a power source that is used to provide,for example, illumination source 722 with electrical current to energizeone or more underwater LEDs to provide low level light for underwatersensors 718-720 to detect objects below waterline 716. Further, tileunits 702-704 may be coupled, directly or indirectly, to other systemcomponents or elements not shown. For example, a hub (as described ingreater detail below) may be in data and/or electrical communicationwith one or more elements of system 700. As described in greater detailbelow, a hub may be an element that is configured to provide remotefunctions such as an audible, visual, haptic, or other type of alarmthat can be triggered in the event a timer threshold initiated when adetected head went below (i.e., penetrated, submerged, passed) waterline716, thus entering a drowning state (as described in greater detailbelow in connection with FIG. 21). In other examples, power may beprovided by power sources internally-housed sources (i.e., within one ormore of tile units 702-704 and/or light unit 706) such as batteries(e.g., chemical, metal or otherwise). In still other examples, conduits708-710 may be implemented for image, data, and/or signal transferbetween tile units 702-704, sensors 712-714 and 718-720 and light unit706. As described herein, control signals may be sent from tile units702-704 to light unit 706 to enable, for example, blue LEDs to energizeafter a detected level of lighting by underwater sensors 718-720indicates sunset or darkness has occurred and detection techniques usingNIR are switched to from RGB-based techniques. Likewise, light sources(not shown) on tile units 702-704 may be enabled by CPU 110 (FIG. 1A),power module 116 (FIG. 1A), and application 102 (FIG. 1A) to provide,for example, red LED-based light when ambient light levels have fallenbelow a given threshold. In other examples, the quantity, type,configuration, function, or structure of the elements shown may bevaried and are not limited to the descriptions provided.

FIG. 7B illustrates an alternative exemplary local system for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, system 730 includes tile units 702-704,light unit 706, conduits 708-710, above-water sensors 712-714,underwater sensors 718-720, illumination source 722, light housing 724,spacer ring 732, and conduit channels 734-736. In some examples,similarly-named and/or numbered elements may be designed, configured,function, and/or implemented similarly to previously-described elements(e.g., system 730 includes elements similarly named, numbered, andconfigured elements such as those found in system 700 (FIG. 7A) (e.g.,tile units 702-704, light unit 706, conduits 708-710, above-watersensors 712-714, underwater sensors 718-720, illumination source 722,and light housing 724)). As shown, system 730 also includes spacer ring732 and conduit channels 734-736, the latter of which are formed (e.g.,molded, cut, shaped, designed, configured, or otherwise modified) intothe former to provide a passage for conduits 708-710 to pass from apower source (not shown) powering light unit 706 and illumination source722. In other examples, conduits 708-710 may pass through conduitchannels 734-736 to transfer data between one or more of light unit 706,illumination source 722, or a power source (not shown) or other dataprocessing apparatus, and tile units 702-704, above-water sensors712-714, and/or underwater sensors 718-720. As described herein, spacerring 732 is described in greater detail below in connection with FIGS.30A-30G. In other examples, system 730 and the elements shown may bedesigned, formed, configured, or implemented differently and are notlimited to the examples shown and described.

FIG. 8 illustrates a perspective view of an exemplary hub for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, hub 800 is shown in a perspective viewincluding electrical contacts 802-804, body 806, port 808, and frontsurface 810. In some examples, hub 800 may be implemented using AC or DCpower such that when contacts 802-804 are placed in contact withenergized positive and negative alternating current terminals, power isprovided to processes and functions such as a timer (not shown), alarm(not shown), or others. For example, housed within body 806 may be analarm that, when triggered, generates an audible, high volume sound thatis configured to propagate through port 808. In other examples, more orfewer ports may be provided in body 806 to permit an audible signal tobe propagated to nearby personnel to alert of a drowning event inprogress (i.e., a drowning state has been determined/estimated, whichinitiated a timer relative to a time threshold. Once the threshold wasexceeded, a control signal (e.g., electrical) or control data was sentto an alarm that was triggered and activated (i.e., energized, renderedaudible, rendered visible, or the like). As described herein, hub 800may be in data communication with one or more of modules 104-122 ofapplication 102 (FIG. 1A) using any type of wired, wireless, optical, orother data communication protocol in addition to direct (e.g., wired) orindirect (e.g., inductive, magnetic) electrical connections, such asthose described herein. In still other examples, a timer (not shown) maybe implemented elsewhere and is not required to be housed within body806. In other examples, the quantity, type, configuration, function, orstructure of the elements shown may be varied and are not limited to thedescriptions provided.

FIG. 9A illustrates a front view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, hub 900 is shown from a front view of body 902. Insome examples, hub 900 and the elements shown may be implementedsimilarly in terms of function and structure as like-named elementsdescribed herein. In other examples, the quantity, type, configuration,function, or structure of the elements shown may be varied and are notlimited to the descriptions provided.

FIG. 9B illustrates a rear view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, hub 910 is shown (from a rear perspective) with body912 and electrical contacts 914-916. As described above, hub 910 may beconfigured to operate on AC electrical current and when electricalcontacts 914-916 are coupled to or placed in contact with positive andnegative terminals of an energized circuit, power may be provided to hub910. In some examples, hub 910 and the elements shown may be implementedsimilarly in terms of function and structure as like-named elementsdescribed herein. In other examples, the quantity, type, configuration,function, or structure of the elements shown may be varied and are notlimited to the descriptions provided.

FIG. 10A illustrates a right side view of an exemplary hub for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, hub 1000 is shown from a right side view,including body 1002, front surface 1004, port 1006, and electricalcontact 1008. In some examples, an alarm (not shown) implemented withhub 1000 may be configured to generate an audible alarm propagatedthrough port 1006. Alternatively, hub 1000 may also be configured togenerate a visible/visual alarm that may be propagated through frontsurface 1004 or, in other examples, port 1006. In some examples, hub1000 and elements shown may be implemented similarly in terms offunction and structure as like-named elements described herein. In otherexamples, the quantity, type, configuration, function, or structure ofthe elements shown may be varied and are not limited to the descriptionsprovided.

FIG. 10B illustrates a left side view of an exemplary hub for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, hub 1020 is shown from a left side view,including body 1002, front surface 1004, electrical contact 1022, andport 1024. In some examples, an alarm (not shown) implemented with hub1020 may be configured to generate an audible alarm propagated throughport 1024, which may be disposed as an opposing counterpart to port 1006(FIG. 10A) on an opposite side of hub 1020. Alternatively, hub 1020 mayalso be configured to generate a visible/visual alarm that may bepropagated through front surface 1004 or, in other examples, port 1024and/or, in some examples, port 1006. In some examples, hub 1020 and theelements shown may be implemented similarly in terms of function andstructure as like-named elements described herein. In other examples,the quantity, type, configuration, function, or structure of theelements shown may be varied and are not limited to the descriptionsprovided.

FIG. 10C illustrates a top view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, hub 1030 is shown from a top view, including body1002, front surface 1004, electrical contacts 1008 and 1022. In someexamples, an alarm (not shown) may be implemented with hub 1030 andconfigured to generate an audible alarm propagated through ports 1006(not shown) and 1024 (not shown), which may be disposed on opposingsides of hub 1030. Alternatively, hub 1030 may also be configured togenerate a visible/visual alarm that may be propagated through frontsurface 1004. In still other examples, a visible/visual alarm signal maybe propagated through one or more of ports 1006 and/or 1024. In someexamples, hub 1030 and the elements shown may be implemented similarlyin function and structure as like-named elements described herein. Inother examples, the quantity, type, configuration, function, orstructure of the elements shown may be varied and are not limited to thedescriptions provided.

FIG. 10D illustrates a bottom view of an exemplary hub for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, hub 1040 is shown from a bottom view, including body1002, front surface 1004, electrical contacts 1008 and 1022. In someexamples, an alarm (not shown) may be implemented with hub 1040 andconfigured to generate an audible alarm propagated through ports 1006(not shown) and 1024 (not shown), which may be disposed on opposingsides of hub 1040. Alternatively, hub 1040 may also be configured togenerate a visible/visual alarm that may be propagated through frontsurface 1004. In still other examples, a visible/visual alarm signal maybe propagated through one or more of ports 1006 and/or 1024. In someexamples, hub 1040 and the elements shown may be implemented similarlyin terms of function and structure as like-named elements describedherein. In other examples, the quantity, type, configuration, function,or structure of the elements shown may be varied and are not limited tothe descriptions provided.

FIG. 11A illustrates a perspective view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, tile unit 1100 includes tile body1102, sensors 1104-1106, recess 1108, port 1110, and mounting plate1112. In some examples, tile unit 1100 and the elements shown may beimplemented, structured, designed, and configured to operate similarlyto like-named elements described herein. As an example, sensors1104-1106 may be disposed above water and underwater, respectively. Forlow light-level conditions, sensors 1104-1106 may be configured asoptical sensors or cameras capable of detecting, recording, sensing, orgathering images using wide angle lenses and active illumination sourcessuch as red LEDs (for above-water low light-level sensing) and blue LEDs(for underwater low light-level sensing (e.g., night)) or NIR. In someexamples, lighting or illumination sources may be implemented within thestructure of a sensors 1104-1106 or any of the elements of a system suchas that shown in FIG. 7A (e.g., elements 702-706). In other words, fornight or low-light environments, illumination sources may be implementedwithin any type of device or system such as those described herein.

When tile unit 1100 is attached, placed, positioned, disposed, orotherwise coupled to a surface (not shown) such as a side, wall, orother surface of a bounded aquatic environment (e.g., body of water suchas a swimming pool), mounting plate 1112 may be used as a couplingsubstrate. In some examples, mounting plate 1112 may be mounted to asurface using fasteners, adhesive, or other fastening material (notshown). Once mounted, tile unit 1100 may be detachably coupled, usingrecess 1108 to receive a tab or other structural feature to secure themounting plate to tile unit 1100. Further, port 1110 may be used toprovide one, none, or multiple ornamental and/or functional features.For example, port 1110 may be used to provide an exhaust port for watervapor egressing from inside tile unit 1100. As another example, port1110 may be used to provide a power indication light when tile unit 1100is energized using, for example, AC power wired directly or indirectlyto the unit. In other examples, port 1100 may be used for other purposesapart from those described herein. In some examples, tile unit 1100 andthe elements shown may be implemented similarly in terms of function andstructure as other like-named elements described herein. In otherexamples, the quantity, type, configuration, function, or structure ofthe elements shown may be varied and are not limited to the descriptionsprovided.

FIG. 11B illustrates a front view of an exemplary tile unit for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, tile unit 1120 (which may be similarly totile unit 1100 (FIG. 11A)) includes front 1102 and sensors 1104-1106. Insome examples, tile unit 1120 and the elements shown may be implementedsimilarly in terms of function and structure as other like-namedelements described herein. In other examples, the quantity, type,configuration, function, or structure of the elements shown may bevaried and are not limited to the descriptions provided.

FIG. 11C illustrates a rear view of an exemplary tile unit for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, tile unit 1130 (which may be implementedsimilarly to tile unit 1100 (FIG. 11A)) includes back plate 1132, sensorreceptacles 1134-1136, and fastener receptacles 1138-1144. As shown,sensor receptacles 1134-1136 may be configured to receive sensormechanisms or apparatus when mounting plate is mated to tile unit 1100(FIG. 11A) or 1120 (FIG. 11B). In some examples, sensor receptacles1134-1136 may provide recesses (not shown) into which apparatus or otherprotrusions associated with sensors 1104-1106 (FIG. 11B) may be insertedwhen back plate 1132 is fastened. Likewise, fasteners (not shown) may beused to secure back plate 1132 to tile unit 1100 (FIG. 11A) or 1120(FIG. 11B) and are configured to insert into fastener receptacles1138-1144. In some examples, fastener recesses 1138-1144 may be used forcoupling back plate 1132 to a surface (e.g., pool side or wall, or thelike). As an example, back plate 1132 is fastened to a surface (notshown) using fasteners that are passed through fastener recesses1138-1144. Fasteners, as used herein, may refer to any type of fasteningimplement such as screw, nails, brads, posts, rails, caulking,adhesives, or others, without limitation or restriction. As anotherexample, back plate 1132 may be configured to couple with anintermediate plate attached to a surface. In other examples, tile unit1130 and the elements shown may be implemented similarly in terms offunction and structure as other like-named elements described herein. Inother examples, the quantity, type, configuration, function, orstructure of the elements shown may be varied and are not limited to thedescriptions provided.

FIG. 12A illustrates a right side view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, tile unit 1200 includes body 1202,sensors 1204-1206, upper face plate 1208, lower face plate 1210, recess1212, and back plate 1214. In some examples, body 1202, sensors1204-1206, upper face 1208, lower face 1210, recess 1212, and back plate1214 may be implemented similarly to like-named elements describedherein. For example, sensors 1204-1206 may be implemented using any typeof sensor technology such as RGB, NIR, optical, thermal, or others,without limitation or restriction.

In some examples, upper face plate 1208 may be used to house or coversensor 1204 to create a watertight sealed cavity with body 1202, lowerface plate 1210, and back plate 1214. Likewise, lower face plate 1210may be used to also create a watertight sealed cavity with body 1202,back plate 1204, and upper face plate 1208. As shown here, upper faceplate 1208 and lower face plate 1210 may refer to separate covers orface plates that may be configured to couple with body 1202.Alternatively, upper face plate 1208 and lower face plate 1210 may referto upper and lower portions, respectively, of a monolithic face plateand are intended to refer to only a portion thereof. In some examples,covers formed using an integrated, formed, monolithic, or other type of“bubbled” or projected cover or housing may be used to protect sensorpackaging, circuits, and other equipment used to implement sensors1204-1206. Further, recess 1212 may be used to receive an internal tabor other structure that, when back plate 1214 is coupled (directly orindirectly) using a gasket or other sealing material (not shown) toprevent water intrusion, is seated (i.e., received into recess 1212). Inother examples, tile unit 1200 and the elements shown may beimplemented, configured to function, and structured similarly to otherlike-named elements described herein. In other examples, the quantity,type, configuration, function, or structure of the elements shown may bevaried and are not limited to the descriptions provided.

FIG. 12B illustrates a left side view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, tile unit 1220 includes body 1202,sensors 1204-1206, upper face plate 1208, lower face plate 1210, recess1222, and back plate 1214. In some examples, body 1202, sensors1204-1206, upper face plate 1208, lower face plate 1210, recess 1222,and back plate 1214 may be implemented, configured to function, andstructured similarly to like-named or numbered elements describedherein. For example, recess 1222 may be a structural feature that isconfigured to function similarly to recess 1212, but is formed on theopposite side of body 1202. In other examples, the quantity, type,configuration, function, or structure of the elements shown may bevaried and are not limited to the descriptions provided.

FIG. 13A illustrates a bottom view of an exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, tile unit 1300 includes body 1302,lower face plate 1304, sensors 1306-1308, tab 1310, recess 1312, andback plate 1314. In some examples, body 1302, lower face plate 1304,sensors 1306-1308, tab 1310, recess 1312, and back plate 1314 may beimplemented, configured to function, and structured similarly tolike-named or numbered elements described herein. As shown, lower faceplate 1304 may be coupled to body 1302, the latter of which may besecured when tab 1310 is set into recess 1312. Further, sensors1306-1308 may be implemented as external windows or housings that areconfigured to permit transfer of signals, data, or images from anaquatic environment to an image capture device (e.g., charge capturedevice, camera aperture, lens, or the like) (not shown) housed withinbody 1302. In some examples, sensors 1306-1308 may refer to sensortechniques such as those described herein, but also structural “windows”or “lenses” that are configured to provide waterproof and/or waterresistant protection of sensors, circuits, and underlying packaging thatmay be housed within body 302 when tile unit 1300 is placed into andoperated in a partially and/or fully submerged position. In otherexamples, the quantity, type, configuration, function, or structure ofthe elements shown may be varied and are not limited to the descriptionsprovided.

FIG. 13B illustrates a top view of an exemplary tile unit for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, tile unit 1320 includes body 1302, sensor1306, back plate 1314, upper face plate 1322, and port 1326. In someexamples, body 1302, sensor 1306, back plate 1314, upper face plate1322, and port 1326 may be implemented, structured, and configured tofunction similarly to like-named or numbered elements described herein.Further, upper face plate 1322 may be coupled to body 1302 and port 1326may be implemented and configured to function similarly to port 1110(FIG. 11A) for various uses such as venting water vapor, providing avisual or audible indicator to indicate operational status (e.g.,illuminating a light through port 1326 to indicate tile unit 1320 isenergized and operational), or others, without limitation orrestriction. In other examples, the quantity, type, configuration,function, or structure of the elements shown may be varied and are notlimited to the descriptions provided.

FIG. 14 illustrates a perspective view of a light unit for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, light unit 1400 includes light body 1402, lightcover 1404, tab 1406, illumination source 1408, and aperture 1410. Insome examples, similarly-named elements may be implemented, structured,and configured to function to previously described elements. Forexample, light unit 1400 may be implemented, structured, and configuredto function similarly to light unit 706 (FIG. 7). As used herein “lightunit” may refer to a light and be used interchangeably, withoutlimitation or restriction. In other examples, light unit may beimplemented, structure, or configured to function differently with more,fewer, or different features than those described herein.

Here, light unit 1400 may be structured by coupling light body 1402 withlight cover 1404 to provide a waterproof or water tight seal against anaquatic environment when submerged, fully or partially. Using tab 1406to seat in a recess molded or otherwise structured into light body 1402,a secure coupling or mating with light cover 1404 may be achieved. Insome examples, illumination source 1408 may include an illuminationsource, which may be incandescent, halogen, LED (i.e., light emittingdiodes of various colors, such as red, blue, green (i.e., RGB), yellow,or others), chemical, or others, without limitation or restriction).Further, illumination source 1408 may also include a structural portionof light cover 1404 that is structured and/or configured to permitpropagation of light waves from various types of illumination sources.Further, illumination source 1408 may also include a clear, translucent,transparent, colored, or opaque (fully or partially) lens that permitslight to propagate from a light source into an aquatic environment.

In some examples, aperture 1410 may be provided in light cover 1400 andused to provide a window or other type of waterproof or watertightopening for one or more sensors (e.g., optical, thermal, infrared,acoustic, RGB, NIR, and others, without limitation or restriction). Asan example, an optical sensor may be disposed at the center of lightunit 1400 using aperture 1410 as a lens cover to protect sensingapparatus (e.g., CCD) from a liquid or aquatic environment. In otherexamples, aperture 1410 may be used to implement other features.Further, light unit 1400 may be coupled to an external power source (notshown) when installed or placed on a surface of a bounded aquaticenvironment (e.g., placed or installed on a wall, side, or othersurface) and used to distribute power to other system components such astile units (not shown, but described herein (e.g., FIG. 7)).Alternatively, light unit 1400 may also receive power from an internalsource such as one or more batteries (of any type of charge storingbattery technology (e.g., lithium ion, NiMH (nickel metal hydride), orothers, without limitation or restriction). In other examples, thequantity, type, configuration, function, or structure of the elementsshown may be varied and are not limited to the descriptions provided.

FIG. 15 illustrates a front view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, light unit 1500 includes light cover 1502,illumination source 1506, and aperture 1504. In some examples, lightunit 1500, light cover 1502, illumination source 1506, and aperture 1504may be implemented, structured, and configured similarly to previouslydescribed elements (e.g., light unit 1400, light cover 1404,illumination source 1408, and aperture 1410 (FIG. 14)). In otherexamples, the quantity, type, configuration, function, or structure ofthe elements shown may be varied in implementation and are not limitedto the descriptions provided.

FIG. 16 illustrates a rear view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, light unit 1600 includes light cover 1602, backplate 1604, inner back plate 1606, tabs 1608-1610, and seals 1612-1614.In some examples, light unit 1600, light cover 1602, and tabs 1608-1610may be implemented, structured, and configured similarly to previouslydescribed elements (e.g., light unit 1400, light cover 1404, and tab1406 (FIG. 14)). As shown, back plate 1604 may be inserted into andcoupled with light cover 1602 and secured using tabs 1608-1610. In someexamples, back plate 1604 may be structurally different than asdescribed above. For example, instead of being inserted into light cover1602, back plate 1604, instead of being inserted, may be “mated,”sealed, connected, or otherwise coupled (directly or indirectly) withback plate 1604 when tabs 1608-1610 are placed (i.e., inserted, snapped,pressed, placed, or otherwise coupled to) into recesses (not shown)formed in light cover 1602. Once coupled, light cover 1602 and backplate 1604 may form seal 1612, which may be waterproof and/orwatertight.

In some examples, inner back plate 1606 may be a permanent or removableportion of back plate 1604. Back plate 1604, when removed, may servevarious purposes including, but not limited to, removal for maintenanceor observation of inner elements of light unit 1600. In other examples,back plate 1604 may be structured and configured to function as amounting plate affixed to a surface, side, or wall of an aquaticenvironment. Once mounted, back plate 1604 may have structured, affixed,molded, or otherwise formed or attached, to receive and couple with backplate 1604 and light cover 1602 to provide seal 1614 (which may be awaterproof or watertight) permitting submergence or immersion of lightunit 1600. In other examples, the quantity, type, configuration,function, or structure of the elements shown may be varied inimplementation and are not limited to the descriptions provided.

FIG. 17A illustrates a right side view of a light unit for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, light unit 1700 includes light body 1702, lightcover 1704, aperture 1706, back plate 1708, recess 1710, and tab 1712.In some examples, light unit 1700 and elements 1702-1712 may beimplemented, structured, and configured similarly to previouslydescribed elements. As shown, light body 1702 may be coupled to backplate 1708 by inserting tab 1712 into recess 1710 to create a seal(e.g., seals 1612-1614 (FIG. 16)), which may be waterproof or watertightwhen light unit 1700 is submerged, immersed, or otherwise placed in anaquatic environment. In other examples, the quantity, type,configuration, function, or structure of the elements shown may bevaried in implementation and are not limited to the descriptionsprovided.

FIG. 17B illustrates a left side view of a light unit for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, light unit 1720 includes light body 1702, lightcover 1704, aperture 1706, back plate 1708, recess 1710, and tab 1712.In some examples, light unit 1720 and elements 1702-1724 may beimplemented, structured, and configured similarly to previouslydescribed elements. Similar to the description of FIG. 17A, light body1702 may be coupled to back plate 1708 by inserting tab 1722 into recess1724 to create a seal (e.g., seals 1612-1614 (FIG. 16)), which may bewaterproof or watertight when light unit 1720 is submerged, immersed, orotherwise placed in an aquatic environment. In other examples, thequantity, type, configuration, function, or structure of the elementsshown may be varied in implementation and are not limited to thedescriptions provided.

FIG. 18A illustrates a top view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, light unit 1800 includes back plate 1802, lightcover 1804, and aperture 1806. In some examples, light unit 1800 andelements 1802-1806 may be implemented, structured, and configuredsimilarly to previously described elements. In other examples, thequantity, type, configuration, function, or structure of the elementsshown may be varied in implementation and are not limited to thedescriptions provided.

FIG. 18B illustrates a bottom view of a light unit for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, light unit 1820 illustrates an opposing view to thatof FIG. 18A, showing back plate 1802, light cover 1804, and aperture1806. In some examples, light unit 1820 and elements 1802-1806 may beimplemented, structured, and configured similarly to previouslydescribed elements. In other examples, the quantity, type,configuration, function, or structure of the elements shown may bevaried in implementation and are not limited to the descriptionsprovided.

FIG. 19 illustrates a perspective view of a dual exemplary tile unit foranalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, system 1900 illustrates waterline1902 and a cutoff view of surface 1904, which may be a side, wall, orother surface of a bounded aquatic environment (e.g., swimming pool,pond, diving tank, or the like). As shown, system 1900 includes tileunits 1906-1908, mounting plates 1910-1912, fasteners 1914-1924, sensorreceptacles 1926-1932, sensors 1934-1940, and conduits 1942-1944. Insome examples, system 1900 and elements 1902-1944 may be implemented,structured, and configured similarly to previously described elements.

Here, tile units 1906-1908 may be coupled (directly or indirectly) tomounting plates 1910-1912, the latter of which are fastened to surface1904 using fasteners 1914-1924. In some examples, mounting plates1910-1912 are further configured with sensor receptacles 1926-1932,which may be structured substantially concaved such that when tile units1906-1908 are coupled to mounting plates 1910-1912, sensors 1934-1940are seated into sensor receptacles 1926-1932. Sensors 1934-1940, in someexamples, may be implemented, structured, or configured similarly tovarious sensor techniques such as those described herein, but may alsoinclude convex windows, lenses, or apertures that are sealed to providea waterproof or watertight cover over underlying sensor apparati,circuits, circuit boards, electronic and electrical components such asonboard processors, and the like. Further, sensors 1934-1940 and othercomponents requiring electrical power, may be energized (i.e.,configured to receive electrical power) via wiring housed, shieldedand/or protected from an aquatic environment by conduits 1942-1944. Inother examples, conduits 1942-1944 may also be configured to house,shield, and/or protect various cables, wires, fibers (e.g., fiberoptics), or other conduits configured to transfer electrical power anddata. Data, in some examples, may be transferred using electrical,optical, chemical, or other techniques for transferring data betweentile units 1906-1908 and other system components (e.g., application 102(FIG. 1A), light unit 1400 (FIG. 14), or others) using conduits1942-1944. In still other examples, data may be transferred between tileunits 1906-1908 using conduits 1942-1944, wireless data communicationand transfer protocols such as Bluetooth, BLE, optical, ZigBee, Z-Wave,WiFi, ANT/ANT+, NFC, infrared, microwave, or a combination thereof,without limitation or restriction. In other examples, the quantity,type, configuration, function, or structure of the elements shown may bevaried in implementation and are not limited to the descriptionsprovided.

FIG. 20 illustrates an exemplary application architecture for analysisand deep learning modeling of sensor-based detection data in boundedaquatic environments. Here, application 2000 includes deep learningmodeling engine 2002, network 2004 (which may be any type of datanetwork over any type of topology using various physical or virtualcomputing resources including clients, servers, computing clouds, or anyother type, without limitation or restriction), datasets 2006-2008,rendering module 2010, initial background model 2012, continuousbackground model 2014, water surface segmentation model 2016, personclassifier 2018, object classifier 2020, person detector 2022, body andhead part detector 2024, and deep learning (feature-based) model 2026.In some examples, deep learning modeling engine 2002 may be used by oneor more elements 104-122 of application 102 (FIG. 1A) to detect,identify, classify, associate, and track objects (i.e., person vs.non-person) in an aquatic environment. Using one or more models or datasources 2012-2026, deep learning modeling engine 2002 can be configuredfor data-driven (i.e., based on collecting and locally analyzing dataand images detected or captured by system 700 (FIG. 7)) anddeep-learning modeled algorithmic-enhanced techniques for detecting,identifying, classifying, associating, and tracking objects in anaquatic environment.

In some examples, sensors (e.g., sensors 126 and/or 144 (FIG. 1A),sensors 1104-1106 (FIG. 11A), and others as described herein), may beused to provide input (not shown) to deep learning modeling engine 2002that, subsequently, generates a call to one or more of models 2012-2026in order to perform a given function. For example, initial backgroundmodel 2012 and continuous background model 2014 may be called by deeplearning modeling engine 2002 to identify and separate backgroundfeatures (e.g., walls, sides, fountains, steps, pillars, columns, orother fixed unchanging features of a given aquatic environment (e.g.,swimming pool or the like)) from input data received from sensors 126and/or 144 (FIG. 1A). For initial and continuous calibration purposes,deep learning modeling engine 2002 may be invoked with control data fromapplication 102 (FIG. 1A) and subsequently configured to generate andsend a control signal or data to deep learning modeling engine 2002,which in turn calls water surface segmentation model 2016, which isdeveloped using data from one or more acquired data sets of variousscenes or images of water surfaces. In some examples, scenes or imagesof water surfaces may be stored in a local database (e.g., datasets2006) or a networked storage repository (e.g., datasets 2008) and usedto “train” deep learning modeling engine 2002 in order to improveaccuracy, reduce latency, and increase performance in relation toapplication 102 (FIG. 1A) performing calibration processes andsub-processes, regardless of whether at the time of initial placement ofa detection system (e.g., system 700 (FIG. 7)) in a bounded aquaticenvironment.

In other examples, deep learning modeling engine 2002 may also beinvoked by classifier 122 (FIG. 1A) to classify detected objects usingdeep learning modeling engine 2002 and person classifier 2018, objectclassifier 2020, person detector 2022, and body and head part detector2024. Using person detector 2022 and body and head part detector 2024,deep learning modeling engine 2002 may be used to reference storedimages or data associated with stored images for identifying detectedobjects as persons or body parts of persons and, if so, associating theparts with individual persons for purposes of tracking. In someexamples, sensors 126 and/or 144 (FIG. 1A) may detect body parts of aperson above and below a waterline. As described above, images collectedof body parts below water can be identified, classified, and associatedwith above-water parts in order to identify, classify, and trackindividual persons within an aquatic environment. In still otherexamples, other features detected can be identified, classified,associated, and, tracked or, in instances where data-driven techniquesare limited or unable to perform these processes, using deep learningmodeling engine 2002 and deep learning (featured-based) model 2026. Asshown, deep learning (feature-based model 2026 may be used byapplication 102 (FIG. 1A) to detect, identify, classify, associate,track, or any purpose related to any type of feature, object, process,or purpose in addition to those described herein. In other examples, thequantity, type, configuration, function, or structure of the elementsshown may be varied in implementation and are not limited to thedescriptions provided.

FIG. 21 illustrates an exemplary state diagram for analysis and deeplearning modeling of sensor-based detection data in bounded aquaticenvironments. Here, state 2102 is entered if no person has beendetected. In some examples, transition 2104 occurs when a head and bodyare detected. After transition 2104, state 2106 is entered in which abody and head are detected above water (e.g., a person standing orwalking at the pool side or poised to jump into the water, or the like)are being tracked. As used herein, “water” may refer to any liquid foundin an aquatic environment. Next, transitions may occur when a trackedbody enters the water (2108) or enters the water, head-first (2110).

In some examples, if transition 2108 occurs, state 2112 may be enteredin which a body and head are above water and being tracked and any bodypart below water is being tracked (e.g. this state could occur when aperson is wading or treading water or standing on a shallow pool bottom)after which a transition may be entered after which transitions occur inwhich A) a body exits the water (2114), B) a head enters the water(i.e., goes underwater) (2116), or C) full immersion occurs (2134). Iftransition 2116 occurs, state 2118 may occur in which tracking of a bodyabove water or tracking a body and head underwater may be entered. Inthis case, when the head enters the water, transition 2124 may occur inwhich a timer may be started, after which transition 2128 occurs inwhich the timer is running and, subsequently, a determination is made asto whether the timer has reached a critical threshold (i.e., a timingthreshold after which a drowning may be occurring) (2130). If the timerhas reached a critical threshold, an alarm may be triggered (2132). Ifnot, state 2126 is reentered or transition 2140 occurs in which thetimer has been stopped.

Referring back to state 2106, if transition 2110 (i.e., a tracked bodyenters the water head-first) occurs, transition 2124 (i.e., timerstarts) or state 2118 (i.e., tracking a body above the water or a bodyand head underwater) may occur. State 2118 may be entered if transition2120 occurs in which the head rises above water, after which transition2122 (i.e., timer stopped) occurs or state 2112 is entered. From state2112, transition 2114 may occur in which a detected and tracked bodyexits the water and state 2106 (i.e., the body and head are above waterand being tracked) occurs or transition 2136 occurs in which the headleaves the water and state 2112 is reentered. From state 2112,transition 2134 occurs when a body is fully immersed after which state2138 or transition 2124 occurs. If state 2138 (i.e., a body and head aretracked underwater) occurs, transition 2136 may occur when a trackedhead leaves the water and transition 2114 may occur further when atracked body exits the water, in which state 2106 and state 2140 (i.e.,timer stops) occur. Although various states and transitions of system100 and application 102 are shown, more, fewer, and/or different statesand transitions could be implemented and those shown are neitherintended to be limiting nor restricting of the described techniques. Theorder and number of states and transitions are not intended to imply orstate an order or priority of occurrence, but are provided for purposesof clarity when referencing FIG. 21. In other examples, state diagrammay be varied in design, states, and transitions and is not limited tothe examples shown and described.

FIG. 22 illustrates an exemplary process for analysis and deep learningmodeling of sensor-based detection data in bounded aquatic environments.Here, process 2200 starts by capturing images from above-water sensors(e.g., 1104 (FIG. 11A)) and below-water sensors (e.g., 1106 (FIG. 11A))(2202). Once captured (i.e., captured may refer to detect, sense,observe, record, or other functions intended to describe operation ofone or more sensors or sensor arrays, such as those described herein),images may be converted to data (2204). In some examples, data may referto any data type, format, schema, or other form including, but notlimited to analog, digital, or others, without limitation orrestriction. Here, captured images or video may or may not be convertedinto digital form or others, but may instead by “converted” to one ormore formats and schemas for storage in, for example, sensor data 128(FIG. 1A) and/or sensor data 154 (FIG. 1A). Process 2200 continues, insome examples, by evaluating data to subtract background features fromcaptured images, video, tracklets, or the like (2206). After subtractingbackground imagery, scenes, features, or the like from captured sensorimagery, video, or data, the remaining foreground data may be evaluatedand used to identify, associate, and/or track a head or body detected byone or more sensors 126 and/or 144 (FIG. 1A) (2208). As describedherein, foreground data may be any type of remaining imagery, video,data after background features and imagery have been subtracted asdescribed herein.

Alternatively, foreground data may also be obtained using a data-drivenmanner in which sensors 126 and/or 144 are implemented with filters andapertures that can be manipulated to focus on the detection of objectsin the foreground and defocus objects in the background. By using one ormore sensors or sensor array(s), a bounded aquatic area may be coveredusing data-driven implementations of system 100 (FIG. 1A) instead ofrelying exclusively on deep learning models. However, in some examples,a combination of data-driven (i.e., such as those described herein) anddeep learning model-based approaches may be implemented and used.

Referring back to FIG. 22, a determination is made as to whether a headand/or body have been detected in the foreground data being used totrack a head of body (2210). If not, captured data and images fromsensors 126 and/or 144 (FIG. 1A) continue to be evaluated until a headand/or body are detected (2206). If detected, then tracking data isgenerated and a detected head and/or body are tracked (2212). A furtherdetermination is made as to whether the detected head and/or body arebelow a waterline (e.g., waterline 716 (FIG. 7)) (2214). If a detectedhead is below a waterline, then a timer is started (2216). Adetermination is then made as to whether the head rises above thewaterline (i.e., a person is assumed to be breathing ambient air if thehead is above the waterline) (2218). If the detected head rises above awaterline, the timer is stopped (2220). If the detected head remainsbelow the waterline and a time threshold is reached, an alarm istriggered (e.g., alarms 210-218 (FIG. 2), hub 800 (FIG. 8), or the like)to alert nearby persons and personnel that a drowning is occurring(i.e., in progress) in order to prevent, stop, or save the drowningperson (2222). In other examples, process 2200 may be varied in order,function, scope, configuration, sub-processes, or the like and is notlimited to the examples shown or described.

FIG. 23 illustrates an alternative exemplary process for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, process 2300 begins by performing an initialcalibration of above-water and underwater sensors (2304). Oncecalibrated, sensor(s) (e.g., sensors 126 and/or 144 (FIG. 1A), sensors1104-1106 (FIG. 11A, or others) may be enabled (e.g., energized,powered, or otherwise placed into an operable and functional conditionto begin detecting objects in an aquatic environment) (2306). Adetermination is made as to whether background features are detected(2308). If no background features are detected, then system 100 andapplication 102 (FIG. 1A) perform continuous calibration and detection(2310). If background features are detected, then the backgroundfeatures are identified by evaluating captured images, video, tracklets,or the like or, alternatively, comparing captured imagery to a deeplearning model generated by deep learning module 108 using model data130 and/or model data 152 (2312). Next, background features aresubtracted from sensor data, images, video, tracklets, or the like(2314). Data, images, video, tracklets or the like remaining afterbackground features are subtracted may be classified as foreground(2316). Once foreground data, images, video, tracklets or the like(hereafter referred to as “foreground”) have been identified,classification and tracking (e.g., processes that may be performed byclassifier 122, CPU 110, tracking module 112, and application 102 (FIG.1A)) is initiated (2318). As shown, process 2300 may be an alternativeprocess to that described above in connection with FIG. 22. In otherexamples, process 2300 may be varied in order, function, scope,configuration, sub-processes, or the like and is not limited to theexamples shown or described.

FIG. 24A illustrates an exemplary calibration process for analysis anddeep learning modeling of sensor-based detection data in bounded aquaticenvironments. Here, process 2400 may be a more detailed processconfigured to be performed as described above in connection with process2304 (FIG. 23). In some examples, initial calibration (i.e., ofabove-water and underwater sensors) is initiated (2402). Imagestabilization is performed, which may include camera calibration (i.e.,for optical sensors) and software-based stabilization forself-calibration using features in the aquatic environment (2404). Insome examples, image stabilization can counter movement caused by windand water movement. Deep learning module 108 (FIG. 1A) is invoked (e.g.,called, instanced, or otherwise sent control signals or data to beginrunning, compiling, or otherwise computing) to segment a body of water(e.g., aquatic environment) (2408). Segmentation processes may be used,as described herein, to map the bottom contour or floor of an aquaticbody (e.g., body of water, swimming pool, diving tank, pond, wadingpool, or the like). In some examples, using a deep learning model tosegment the extent of a body of water may be performed when the aquaticbody is devoid of detected persons and objects, which aids in detectingbackground features and fixed features such as steps, entry/exit points,and others. Further, segmentation may be useful in using underwatersensors (e.g., sensor 1106 (FIG. 11A)) to map a bottom or floor of anaquatic body. In some examples, the use of multi-stereo techniques maybe employed to map the floor of an aquatic environment (2410). In otherexamples, other techniques may be used. As described above, if a poolfloor is assumed to be smooth (i.e., planar), a homographytransformation may be used for mapping. Otherwise, a full stereoreconstruction of a floor (i.e., bottom, bottom contour, or the like) ofan aquatic environment floor may be performed using, in some examples,active illumination patterns such as those described herein (e.g., lightcurtains, light sheets, and the like).

Here, sensors may be calibrated for the water level (i.e., waterline) inan aquatic environment (2412). As mentioned above, determining anair-water interface for an aquatic environment supports performingcalibration for refractions generated by the water (i.e., liquid)surface and for identifying when a detected head of a person is nearingsaid surface. If the water surface of an aquatic environment is stillwith no persons or objects present, the surface may be assumed to beplanar in which a planar homography transformation may be used todetermine the waterline (i.e., a waterline). If the surface of anaquatic environment is not still, stereo reconstruction of the poolsides may be performed using one or more sensors and/or sensor arrays.In other words, a water-level plane may be visualized (i.e., projectedto) in all camera views, above and underwater. After performingwater-level calibration, process(es) for occlusion removal may beinitiated (2414). In some examples, occlusion removal may be performedby using multiple sensors positioned at different points in an aquaticenvironment to create a single “virtual” sensor. For example, multiplecameras (i.e., optical sensors) may be positioned at different points ina swimming pool, but the collective imagery and data gathered may becombined and used to construct a virtual camera array or syntheticaperture whose input can be implemented akin to a very large aperturewith a shallow depth of field in order to remove visual occlusions.Another technique for occlusion removal may be performed by using atilt-shift lens to create a shallow depth of field along a plane of thesurface of the aquatic environment. Using a shallow depth of fielddefocuses objects far away from the water surface and instead keepsobjects near the plane of the water surface in focus (i.e., thus,eliminating occlusions). In other examples, a synthetic aperture such asthat described above may be combined with the use of one or moretilt-shift lenses to keep an object in focus while defocusing otherobjects and those that are farther away from the plane of the watersurface. In other examples, process 2400 may be varied in order,function, scope, configuration, sub-processes, or the like and is notlimited to the examples shown or described.

FIG. 24B illustrates an exemplary process for segmentation of bodies ofwater for analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments. Here, process 2420 begins byinvoking deep learning module (e.g., deep learning module 108 (FIG. 1A))to segment an aquatic environment for various purposes (2422). Forexample, mapping the bottom or floor of a swimming pool or other aquaticenvironment may be performed using deep learning models that, wheninvoked, may be used to compare captured images, video, tracklets, orthe like to databases of images of bottoms or floors of aquaticenvironments. A call may be initiated to a deep learning module (e.g.,deep learning module 108 (FIG. 1A)) (2424). Once a call is initiated toinvoke deep learning models, a request may be sent including queries fortypes of data, images, or other attributes of data to be run through adeep learned model (2426). For example, data and/or datasets retrievedfrom one or more databases of aquatic environments may be run through adeep learned model that compares images captured by sensors 126 and/or144 (FIG. 1A) to map the bottom of a swimming pool (2428). An exemplaryprocess for mapping an aquatic environment is provided in greater detailbelow in connection with FIG. 24C. In other examples, process 2400 maybe varied in order, function, scope, configuration, sub-processes, orthe like and is not limited to the examples shown or described.

FIG. 24C illustrates an exemplary process for mapping aquaticenvironments for analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments. Here, process 2430begins by determining whether the bottom surface (e.g., swimming poolfloor) of an aquatic environment is smooth (2432). If smooth, then anassumption may be made that the floor is planar (2434) and a homographytransformation may be used to map the floor (2436). However, if thefloor is not smooth, then distortion is removed from captured imagery,video, tracklets, or data from sensor(s) 126 and/or 144 (FIG. 1A)(2438). After removing distortion, captured imagery (or the converteddata thereof) may be compared to those of deep learned models to developa three-dimensional (i.e., 3D) map of the floor (2440). In otherexamples, process 2400 may be varied in order, function, scope,configuration, sub-processes, or the like and is not limited to theexamples shown or described.

FIG. 25A illustrates an exemplary process for background subtraction inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, process 2500 begins by initiating abackground data subtraction data model (2502). As shown, a call may begenerated by one or more modules of application 102 (FIG. 1A) to deeplearning module 108 (FIG. 1A) to perform background subtraction tosuppress surface reflections. Instead of data-driven techniques (i.e.,those that collect and analyze imagery or data from sensors 126 and/or144 (FIG. 1A)), one or more deep learning models may be used to identifybackground data associated with reflections at the surface or waterlineof an aquatic environment (i.e., surface reflections) (2504). In someexamples, surface reflections may be identified by comparing sensorinput (e.g., imagery, data, or the like) to data referenced by deeplearning module 108 (FIG. 1A). In other examples, images of surfacereflections may be compared to those captured by sensors 126 and/or 144by using deep learning module 108 (FIG. 1A) to reference model data 130and/or 152 (FIG. 1A), the latter of which may be over a remote,distributed, virtual, or otherwise data network accessible database.Once identified, surface reflections may be suppressed as background(2506). After suppressing surface reflections as background, one or moredeep learning models may be used to identify remaining background dataand imagery associated with below-water (i.e., underwater) reflections(2508). Once identified, background imagery and/or data associated withbelow-water reflections may be removed (2510). A determination is thenmade as to whether the water surface is still (2512). If the watersurface is not still, then spatio-temporal analysis may be used toidentify and remove surface reflections at the air-water interface(i.e., waterline 716 (FIG. 7)) (2514). If the water surface is still,then a polarizing filter may be used by sensors (e.g., sensors 126and/or 144 (FIG. 1A), sensors 712-714, 718-720 (FIG. 7)) to removereflections from background imagery and/or data at the time of opticalcapture by sensors without requiring further processing by GPU 104, CPU110, deep learning module 108, or any of the elements shown inconnection with application 102 (FIG. 1A). As shown in FIG. 25B,processes for background subtraction are further described. In otherexamples, process 2500 may be varied in order, function, scope,configuration, sub-processes, or the like and is not limited to theexamples shown or described.

FIG. 25B illustrates a further exemplary process for backgroundsubtraction in analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments. Here, process 2520 is acontinuing process for background subtraction. In some examples, dataand/or imagery (as used herein, “data” may refer to any type of inputcaptured by a sensor, regardless of form, format, or media) associatedwith caustics and splashes may be removed from background data andimagery using spatio-temporal analysis (2522). Next, background data andimagery may be segmented to identify water surface from non-surface dataand imagery (2524). Classification of water surfaces may subsequently beperformed in which deep learning module 108 (FIG. 1A) may referencestored water surface images or data stored in model data 130 and/or 152(FIG. 1A) (2526). For example, application 102 (FIG. 1A) may beconfigured to access a body of stored data and images associated withswimming pools of various design, construction, appearance, materials,or other attributes. When classifying water surfaces, application 102(FIG. 1A) may reference local databases using deep learning module 108(FIG. 1A) to compare sensor data and images to identify and classifywater surfaces, which aids application 102 in identifying objectsapproaching waterline 716 (FIG. 7) (2528).

Referring back to FIG. 25B, a determination is made as to whetherdetected (i.e., sensed) water distortions are severe (2530). Ifdistortions are severe, then video clips (e.g., tracklets) are selectedfrom sensor data 128 and/or 154 (FIG. 1A) to identify water surfacevideos with the least amount of distortion (2532) before removingdistortions again (2528). If the water distortions are not severe, thenthe above-described process in FIGS. 25A-B are performed to providecontinuous background subtraction from captured sensor input. In otherwords, by performing processes 2500-2520, background subtraction may beperformed continuously, whether using data-drive techniques or deeplearning models, in order to identify objects (e.g., person vs.non-person) in foreground data and imagery and to identify, associate,classify, correspond, track, and detect persons who may enter a drowningstate. In other examples, process 2520 may be varied in order, function,scope, configuration, sub-processes, or the like and is not limited tothe examples shown or described.

FIG. 25C illustrates an exemplary process for water surfaceclassification in analysis and deep learning modeling of sensor-baseddetection data in bounded aquatic environments. Here, process 2540 maybe implemented to classify water surfaces as a sub-process of backgroundsubtraction, detect person-related objects (e.g., body, head, orportions thereof) and distinguish them from non-person objects. Process2540 may start, in some examples, by evaluating polarizationdifferentials of images and/or data captured by sensors (e.g., sensors126 and/or 144 (FIG. 1A)) (2542). Next, thermal differentials areevaluated to identify and distinguish bodies (i.e., body, head, or partsand/or portions thereof) at the water surface or surface of an aquaticenvironment (2544). In some examples, if data-driven sources are unableto collect and analyze sufficient imagery and data to identify anddistinguish bodies, deep learning module 108 (FIG. 1A) may be called toreference images and/or data stored in model data 130 and/or 152 (FIG.1A) in order to identify and distinguish color features of persons (orportions thereof) from the water surface (2546). The results of theseprocesses may be incorporated (i.e., combined in whole or part) withwater-level calibration results, such as those determined at 2412 ofFIG. 24A (2548). In other examples, process 2540 may be varied in order,function, scope, configuration, sub-processes, or the like and is notlimited to the examples shown or described.

FIG. 26A illustrates an exemplary process for detection andclassification of bodies in analysis and deep learning modeling ofsensor-based detection data in bounded aquatic environments. Here,process 2600 begins by retrieving imagery and data after backgroundimagery and data have been subtracted (2602). Next, the retrievedimagery and data is identified as “foreground data” (2604). Theforeground data is evaluated to classify detected person vs. non-personobjects (2606). Once classified (i.e., by classifier 122 (FIG. 1A)),foreground data associated with persons is tracked (2608). As describedherein, “classify” may include identifying persons vs. non-personobjects, associating detected objects with individual person ornon-person objects, which may further include creating correspondencesbetween detected, classified objects (i.e., above-water and underwater(i.e., “below-water”) and persons to whom the body, body parts, head, orportions thereof, belong 2610). If available, imagery (i.e., images,video, tracklets, or the like) and data from multiple sensors (e.g.,above-water sensors 712-714, underwater sensors 718-720 (FIG. 7), or thelike) or multiple tile units (e.g., tile units 702-704 (FIG. 7), or thelike) maybe used to create and apply associations with single viewassociations that correspond to the same person (2612). In other words,associations created (i.e., generated between detected objects thatcorrespond to the same person may result from captured imagery and datafrom a single sensor or sensor array. However, if multiple tile units,sensors, and or sensor arrays are used, process 2600 may combinedetected input and associations by using application 102, trackingmodule 112, and CPU 110 (FIG. 1A) to further associate them to a singleindividual or person. This improves accuracy of detection and tracking,and increases the probabilistic likelihood of tracking persons anddetecting drowning events occurring, providing an enhanced opportunityfor intervention and drowning prevention. In other examples, process2600 may be varied in order, function, scope, configuration,sub-processes, or the like and is not limited to the examples shown ordescribed.

FIG. 26B illustrates a further exemplary process for classification inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, classification process 2620 beginsby initiating a process to segment foreground data into person ornon-person data (2622). As previously mentioned, “person” may refer tohumans or animals such as domestic pets or wildlife, without limitationor restriction. Once segmented into person vs. non-person data,classifier 122 (FIG. 1A) is called to classify person data (i.e.,imagery and/or data) based on various classifications that are eitherstored as sensor data 128 and/or 154 (FIG. 1A) or learned from deeplearning module 108 and model data 130 and/or 152 (FIG. 1A) (2624). Insome examples, classifier 122 is configured to compare foreground datato sensor data 128 and/or 154 (FIG. 1A) or, using deep learning module108 (FIG. 1), model data 130 and/or 152 (FIG. 1A) to detect and identifyposes or features (2626). Further, classifier 122 may be configured tocompare foreground data to sensor data 128 and/or 154 (FIG. 1A) or,using deep learning module 108 (FIG. 1), model data 130 and/or 152 (FIG.1A) to identify body or body part size, shape, and other features(2628). Classifier 122 (FIG. 1A) may be configured to compare foregrounddata to thermal data (i.e., sensor data 128 and/or 154 (FIG. 1A)) toidentify any thermal differentials (i.e., differences in temperature)between detected objects (i.e., person vs. non-person) and an aquaticenvironment (2630). Using classification process 2620, persons may beclassified to be separated from non-person objects in order toprioritize and distinguish said objects for tracking purposes, asdescribed here. In other examples, classification process 2620 may bevaried in order, function, scope, configuration, sub-processes, or thelike and is not limited to the examples shown or described.

FIG. 26C illustrates yet another exemplary process for tracking usinganalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments. Here, process 2640 begins by applyingframe-by-frame tracking using probabilistic tracking approaches, whichmay be various and are not limited to any specific type (2642).Tracklets (i.e., short video clips taken from large video segmentscaptured by sensors (e.g., sensors 126 and/or 144 (FIG. 1A))) aregenerated as a result of the frame-by-frame tracking (2644). Deeplearning module 108 (FIG. 1A) is called to use the generated trackletsas input to one or more deep learning models (or algorithms) in order to“learn” a feature space for a person (2646). In other words, a deeplearning model may be used by deep learning module 108 to compare thegenerated tracklets to referenced imagery and data in order to identifyfeatures on a detected person-related object. In some examples, variousalgorithms may be used to develop the schema for one or more deeplearned models including, but not limited to those used forconvolutional neural networks, feature detection with the aid of depthinformation from range scanners (e.g., range scanners employed assensors 650-652 (FIG. 6B)), unsupervised deep learning with superpixelsegmentation, multiple viewpoints with a probabilistic framework,articulate human modeling, and others, without limitation or restriction(2648). Once features (e.g., head, hair, eyes, ears, chin, skeletalstructure, skull structure, skin blemishes or features, sallowness, orother attributes, without limitation or restriction) are learned by deeplearning module 108 using one or more deep learned models (not shown),above-water and underwater (i.e., below-water) associations of featuresto a given person are maintained and tracked (2650). In some examples,applying depth estimation to identified features may be used to narrowor reduce the number of possible associations and, consequently, reducethe processing load placed on CPU 110 (FIG. 1A). In other examples,geometric fundamental matrix constraints may also be used to eliminateincorrect associations between imagery captured by above-water andunderwater sensors (e.g., cameras, optical sensors, range sensors, rangefinders, and others). Further, association (i.e., corresponding featuresto a given person) may be facilitated using calibrated range scannersabove-water and underwater by also using depth information of trackedpersons as an additional input to improve accuracy. In other examples,classification process 2640 may be varied in order, function, scope,configuration, sub-processes, or the like and is not limited to theexamples shown or described.

FIG. 27A illustrates an exemplary graphical representation of motionfeatures generated in analysis and deep learning modeling ofsensor-based detection data for organic motion determination in boundedaquatic environments. Here, display 2700 represents an example of avisual presentation of processed or analyzed data of a detected objectwithin a bounded aquatic environment. Region 2702, in some examples, maybe an aggregated plot of coordinates, rays, or other mathematicalconstructs used to plot detected motion (e.g., irregular or regular)associated with a detected object (e.g., motion associated with anorganic (i.e., organic motion) or inorganic object)). Region 2702, insome examples, may represent a plot or other visual graphical depictionof data gathered showing regular motion, which may be associated with anorganic or inorganic object. For example, a ball floating in a swimmingpool may be captured (i.e., as an image by a camera or other imagecapture device that is configured to provide input to image capturemodule 182 (FIG. 1C)) and analyzed using the techniques described herein(e.g., system 180 (FIG. 1C)) and data generated from the results of ananalysis may be presented in display 2700 as region 2702. Motionfeatures (i.e., components of captured, analyzed, or processed motionfrom captured images, video, audio, or other input) of an objectdemonstrating regular motion may be graphically displayed as region 2702while regions 2704-2706 may be presented to illustrate areas of acaptured image, video, or the like that have no motion detected as aresult of processing (e.g., analyzing) performed by system 180 (FIG. 1C)or the like. As shown in display 2700, motion features shown as region2702 (e.g., regular motion) may be evaluated by classifier 190 (FIG. 1C)using deep or machine learning algorithms to determine and/or identifydetected motion as being associated with an inanimate object. In someexamples, regular motion or regular motion features (usedinterchangeably) may not be detected or result from analysis by system180 (FIG. 1C), including deep learning and machine learning algorithmsemployed by classifier 190 (FIG. 1C) and additional logic (not shown)may be invoked to further determine a drowning condition does not existand a signal is not generated and sent to drowning detection/alarmmodule 186 (FIG. 1C). In other examples, regular motion may beillustrated different and is not limited to the examples shown anddescribed.

FIG. 27B illustrates another exemplary graphical representation ofirregular motion features depicting organic motion as generated usingtechniques for analysis and deep learning modeling of sensor-baseddetection data for organic motion determination in bounded aquaticenvironments. Here, display 2720 illustrates regions 2740 and 2704-2706,which are configured to represent plotted areas or regions associatedwith irregular motion (i.e., region 2740) or no motion features entirely(i.e., regions 2704-2706, which may, when evaluated using invoked deepor machine learning algorithms, are determined to be background orforeground areas in which no detected objects are found as a result ofprocessing data input to image capture module 182 (FIG. 1C) or otherelements of system 180 (FIG. 1C)). In some examples, regions 2722-2740may be referred to as “motion features,” which are features of analyzedirregular or regular motion and which may be graphically depicted asshown in display 2720. For example, regions 2722-2738 may be motionfeatures associated with irregular motion (i.e., organic motionemanating or originating from an animate object such as a human oranimal). Region 2740 (which may be similar to region 2702 (FIG. 27A))may be associated with regular motion (i.e., inorganic motion emanatingor originating from an inanimate object such as a pool toy, ball, or anyother inanimate object).

Here, region 2740 may represent a detected body or body part in anaquatic environment, as analyzed by image capture module 182 (FIG. 1C)and detected head/body parts detector module 184 (FIG. 1C) (as describedthroughout this Detailed Description, “head/body parts detector module184” may be interchangeably referred to as “body parts detector module184,” “parts detector module 184,” or “detector module 184,” withoutlimitations or restrictions). Regions 2722-2738 may be generated anddisplayed as a result of evaluating and processing data using system 180(FIG. 1C).

Here, regions 2722-2738 may be generated and displayed as the result ofevaluating and analyzing using deep learning or machine learningalgorithmic techniques input data from image capture module 182 (FIG.1C)). Irregular motion may be associated with animate objects that, whencaptured and processed by system 180 (FIG. 1C), may be plotted orrendered as irregular “rays,” “zig zags,” or other geometrical shapesthat are intended to visually depict irregular motion originating froman animate object (e.g., a human or other animal body detected within abounded aquatic or other environment being evaluated and analyzed bysystem 180 (FIG. 1C)). Here, regions 2722-2738 may be implemented anddisplayed as shapes that are regular or irregular in shape, but areshown emanating from region 2740. As an example, detected body parts(i.e., as determined by processing captured image data by head/bodyparts detector 184 (FIG. 1C)) are analyzed to identify coordinatesassociated with detected limbs, joints, parts, and other features of abody. In some examples, coordinates may be assigned relative to asurrounding environment (e.g., a bounded aquatic environment such as aswimming pool, lake, pond, bay, harbor, or the like). After assigningcoordinates to detected body parts, historical analysis and comparisonof analyzed captured image data may be run against deep or machinelearning algorithms by classifier 190 (FIG. 1C)) and to develop ahistorical set of data that may be plotted to resemble display 2720, orthe like. Motion features displayed in display 2720 may also be plottedhistorically over time to resemble a “heat map” in which motion featuresare plotted as regions of varying color, shape, or size to denoteregular (i.e., motion associated with inanimate or inorganic objects;that is, inorganic motion) or irregular motion (i.e., motion associatedwith animate or organic objects; that is, organic motion). As shown,regions 2722-2738 may be displayed in association with region 2740 tographically depict or display organic motion associated with a detectedanimate object such as a human or animal body or body part(s). In otherexamples, display 2720 may be generated and implemented differently,without limitation or restriction to any particular example shown anddescribed.

FIG. 28A illustrates an exemplary process for deep learningclassification in analysis and deep learning modeling of sensor-baseddetection data for organic motion determination in bounded aquaticenvironments. Here, process 2800 may begin by receiving input frames ofcaptured images above water (2802) and/or images captured below orunderwater (2804). Images captured (e.g., 2802-2804) may be captured bycameras or other image/video/audio capture devices and input to imagecapture module 182 (FIG. 1C), but are not limited to any specific type,specification, design, configuration, or other function. In someexamples, input frames may be received as electrical or electronicsignals or data such as digital conversion of captured images into datathat may be transformed or converted by image capture device(s) beforebeing transferred or transmitted to image capture module 182 (FIG. 1C).

Referring back to FIG. 28A, input frames 2802-2804 are sent to andreceived by image capture module 182 and processed to generate resultantdata that may be further processed by other elements of system 180 (FIG.1C). In some examples, alignment block 2806 may be configured, as acomputing or logic-based module implemented using software, hardware,firmware, circuitry, or a combination thereof, to process data receivedfrom image capture module 182 to generate data that, when rendered,present aligned images captured above water with images captured belowwater. Alignment block 2806 may also perform other processing inaligning data associated with above and underwater images for furtherprocessing by other computing modules such as those shown in system 180(FIG. 1C). For example, an object that is partially underwater such as abody or body part (e.g., head) may be processed by alignment block 2806to align above and underwater images for further processing by headdetection 2808.

As shown in FIG. 28A, head detection may be performed on data generatedby image capture module 182 (FIG. 1C) and/or head/body parts detectormodule 184 (FIG. 1C) to identify within an image being processed (aboveand underwater (i.e., below a waterline)) body parts (2808). Identifiedbody parts may be assigned coordinates relative to a surroundingenvironment that has been mapped. For example, a detected head may beassigned coordinates based on computing performed by classifier 190(FIG. 1C) that employs deep learning or machine learning algorithms toidentify facial features such as a nose, mouth, eyes, ears, or otherfacial features. Further, identified body parts and features, onceassigned coordinates may be further tracked and evaluated. For example,a timer may be activated and used to assign times to detected body(s)and body part(s) that are underwater (2810). Using coordinates assignedto detected body(s) and body part(s), pose estimation may be performedusing the techniques described herein (2812). By using pose estimation,system 180 (FIG. 1C) may be configured to not only identify a body(s) orbody part(s) that are underwater, but may also employ deep learning ormachine learning algorithms that can image, pattern, or perform othermatch or comparison processing to generate a computed estimation (usingcoordinates assigned by head/body parts detector module 184 (FIG. 1C))of a pose for a body or body part detected above and/or below water(2812). Using rules, thresholds (i.e., quantitative or qualitative rulesfor generating an alarm signal if a nose or mouth (i.e., detected facialfeature) is underwater (i.e., below a waterline) for a given period oftime that is equal to or greater than a given amount of time as measuredin microseconds, milliseconds, seconds, minutes, hours, or the like) maybe compared to a given data set resulting from pose estimation 2812(2814). Other conditions may be checked such as whether a particularbody part or feature, once detected, is above or below water. Anothercondition that may be checked may be whether irregular organic motionhas been detected and, if so, compared to another condition thatevaluates time duration of said irregular organic motion and whether togenerate a triggering alarm signal by drowning detection/alarm module186 (FIG. 1C) (2814).

In some examples, if organic motion has been determined (i.e., adetected body, body part, or feature of an animated or organic body suchas a human or animal) has been identified, detected, and evaluated,classification of said organic motion may be further classified (i.e.,processed by classifier 190 (FIG. 1C)) using one or multiple deeplearning or machine learning algorithms. Classification may includedetermining a type of organic motion (e.g., drowning, flailing,grasping, sinking, respiratory distress, spasming, swallowing, gulping,inhaling, erratic breathing, or others, without limitation orrestriction) (2816). Further, depending on the type of motion detected(e.g., irregular or regular), conditions may be further checked (2818).For example, irregular motion of a detected body, body part, or featuremay be checked to confirm various conditions set within system 180 inorder to determine whether a drowning or other distress activity isoccurring. In the event conditions are checked and irregular motion thathas been classified as drowning, drowning-related, or distress, an alarmsignal may be generated by drowning detection/alarm module 186 (FIG. 1C)and result in an audible, visual, haptic, combination, or other type ofalarm that alerts nearby personnel (2820). In other examples, an “alert”or other alarm signal may also generate and send, using data processedby system 180, a location and identifying information as to the bodygenerating organic motion. In still other examples, process 2800 and theabove-described functions may be performed, configured, ordered,designed, or otherwise implemented differently and are not limited tothose shown and described.

FIG. 28B illustrates another exemplary process for deep learningclassification in analysis and deep learning modeling of sensor-baseddetection data for organic motion determination in bounded aquaticenvironments. Here, process 2830 begins by receiving an input frame ofan above water image at an image capture device (2832). Another inputframe of an underwater (i.e., below water, below a waterline) image isreceived by an image capture device (2834). In some examples, capturedimages by transmitted and received by image capture module 182 ((FIG.1C) in various signal and data formats (e.g., analog voltage-varyingsignaling, digitally rectified waveforms (i.e., digital data)), withoutlimitation or restriction. Further, the order in which processes 2832and 2834 may be performed are presented arbitrarily and may be varied(i.e., there is no particular requirement for the order in which aboveand underwater images are captured and provided as input to imagecapture module 182 (FIG. 1C)).

Referring back to process 2830, input frames received are aligned forabove water and underwater distortion or other effects in order togenerate an input image or data set associated with an input image of anobject, body, or body part in a bounded aquatic environment (2836). Oncealigned, the image may be processed using head/body parts detectormodule 184 (FIG. 1C) and pose estimation module (FIG. 1C) (2838). Asdescribed herein, input data (e.g., data associated with input imagescaptured by image capture devices such as a camera) may be processed by,for example, head/body parts detector module 184 to identify objects anddetermine whether body parts such as heads, arms, legs, torso, or otherbodily features are present in captured images. In some examples,processed data may be used to also assign coordinates to various pointson detected body(s) and body part(s) and, by evaluating coordinate datasets (i.e., data sets comprising coordinate values taken over particulartime durations or ranges or at specific times), motion features can beidentified and evaluated by one or more elements of system 180 (FIG.1C). Further, identified body part(s) or object(s) may be furtherevaluated using the assigned coordinate values to points, positions,joints, lengths (e.g., forearms, upper arms, legs, torso, or otheranatomical features) to identify and determine poses (i.e., poseestimation as described herein). By evaluating assigned coordinatevalues to detected body(s) and/or body part(s) and estimating poses,motion features may be identified as irregular motion that can beclassified (i.e., by classifier 190 (FIG. 1C)) as organic motion asopposed to regular motion associated with inanimate objects, the formerbeing used as triggering data or data sets to establish a detecteddrowning (once other conditions are evaluated such as time thresholdsfor submersion of detected body(s) and/or body part(s) such as a head,mouth, nose, or the like) and initiating an alarm or alert (as describedherein, the terms “alarm” and “alert” may be used interchangeably,without limitation or restriction) (2840). In some examples, processeddata from head/body parts detector module 184 (FIG. 1C) and poseestimation module 188 (FIG. 1C) is transferred to classifier 190 (FIG.1C), which is configured to run one or more deep learning or machinelearning algorithms in order to classify data associated with thedetected and identified motion features and pose estimations and to alsoevaluate classified data against user or system-input conditions (e.g.,rules, thresholds, limitations, restrictions, or other processingconsiderations that may be generated by system 180 (FIG. 1C)) (2844). Asshown in this example, a subsequent determination may be performed as tothe type of motion feature (e.g., organic motion or inorganic motion,irregular motion or regular motion, or others) (2844).

In some examples, if no organic (i.e., irregular motion features) motionis detected, process 2830 ends. However, if organic motion is detectedand system-performed checks of conditions indicate a drowning conditionexists, an alarm signal, data, or other initiating condition may begenerated (2846). Once generated, an alarm signal may be transmitted inorder to trigger or initiate an alarm, which may be audible, visual,haptic, graphical, multimedia, or the like, without limitation orrestriction (2848). In some examples, an alarm may be an audible alarmthat sounds when a generated alarm signal is received. In otherexamples, an alarm may be a graphical and/or audible alert that ispresented on a display or computing device (e.g., desktop, laptop,tablet, mobile, vehicular, mounted, fixed, unfixed) that not onlycreates an audible and/or visual alarm that a drowning condition exists,but may also identify a location or specific individual within a boundedaquatic environment and, in some examples, may present a two orthree-dimensional display illustrating a drowning person(s) or animal(s)within a bounded aquatic environment. In other words, when a drowningcondition (i.e., irregular motion features associated with organicmotion) is determined, then an alarm may be presented, which may beimplemented using various types of alarms, alerts, or presentationsthereof, without limitation or restriction. In still other examples, theabove-described processes associated with process 2830 may be varied inorder, configuration, implementation, or other aspects, withoutlimitation or restriction to any particular example shown or described.

FIG. 29 illustrates an exemplary computing system suitable for analysisand deep learning modeling of sensor-based detection data for organicmotion determination in aquatic environments. In some examples, computersystem 2900 may be used to implement computer programs, applications,methods, processes, or other software to perform the above-describedtechniques. Computing system 2900 includes a bus 2902 or othercommunication mechanism for communicating information, whichinterconnects subsystems and devices, such as processor 2904, systemmemory 2906 (e.g., RAM), storage device 2908 (e.g., ROM), disk drive2910 (e.g., magnetic or optical), communication interface 2912 (e.g.,modem or Ethernet card), display 2914 (e.g., CRT or LCD), input device2916 (e.g., keyboard), cursor control 2918 (e.g., mouse or trackball),communication link 2920, and network 2922.

According to some examples, computing system 2900 performs specificoperations by processor 2904 executing one or more sequences of one ormore instructions stored in system memory 2906. Such instructions may beread into system memory 2906 from another computer readable medium, suchas static storage device 2908 or disk drive 2910. In some examples,hard-wired circuitry may be used in place of or in combination withsoftware instructions for implementation.

The term “computer readable medium” refers to any tangible medium thatparticipates in providing instructions to processor 2904 for execution.Such a medium may take many forms, including but not limited to,non-volatile media and volatile media. Non-volatile media includes, forexample, optical or magnetic disks, such as disk drive 2910. Volatilemedia includes dynamic memory, such as system memory 2906.

Common forms of computer readable media includes, for example, floppydisk, flexible disk, hard disk, magnetic tape, any other magneticmedium, CD-ROM, any other optical medium, punch cards, paper tape, anyother physical medium with patterns of holes, RAM, PROM, EPROM,FLASH-EPROM, any other memory chip or cartridge, or any other mediumfrom which a computer can read.

Instructions may further be transmitted or received using a transmissionmedium. The term “transmission medium” may include any tangible orintangible medium that is capable of storing, encoding or carryinginstructions for execution by the machine, and includes digital oranalog communications signals or other intangible medium to facilitatecommunication of such instructions. Transmission media includes coaxialcables, copper wire, and fiber optics, including wires that comprise bus2902 for transmitting a computer data signal.

In some examples, execution of the sequences of instructions may beperformed by a single computer system 2900. According to some examples,two or more computing system 2900 coupled by communication link 2920(e.g., LAN, PSTN, or wireless network) may perform the sequence ofinstructions in coordination with one another. Computing system 2900 maytransmit and receive messages, data, and instructions, includingprogram, i.e., application code, through communication link 2920 andcommunication interface 2912. Received program code may be executed byprocessor 2904 as it is received, and/or stored in disk drive 2910, orother non-volatile storage for later execution. In other examples, theabove-described techniques may be implemented differently in design,function, and/or structure and are not intended to be limited to theexamples described and/or shown in the drawings.

FIG. 30A illustrates a front view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,spacer ring 3000 includes edges 3002-3006, surfaces 3008-3010, conduitchannels 3012-3014 (hereafter “conduit channels” or “channels” may beused interchangeably, without limitation or restriction), and interlocks3016-3022. As shown, spacer ring 3000 may be implemented as an elementor component of, for example, system 700 (FIG. 7A), 730 (FIG. 7B), orothers. Spacer ring may be an intermediate component used to enablepower and/or data signaling voltages to be transferred between a powerconduit supplying, for example, an underwater light (e.g., lighting unit1400 (FIG. 14)) to one or more sensors, processors, hubs, or otherelements of drowning detection systems such as those described herein.

In some examples, spacer ring 3000 may be formed and/or configured to bepositioned, affixed, or otherwise disposed over, for example, a recess(i.e., opening (not shown)) in which light unit 1400 (FIG. 14) or otherlighting fixtures, lights, or lighting units are installed, configured,and used in bounded aquatic environments such as swimming pools or thelike. In some examples, spacer ring 3000 may be configured to providestructural support for passing wires, cables, or conduits (hereafter“conduits”) of various gauges, diameters, and specifications between apower source (not shown; e.g., power source for an underwater light) andother elements of system 700 (FIG. 7A), as an example. Conduit channels3012-3014 may be used to permit passage of conduits that are configuredto transmit electrical current for power, data, or other purposes.Conduits may be passed through one or both of conduit channels 3012-3014to transfer power between a power source (not shown) that may bedisposed on one side of spacer ring 3000 or another. In other examples,more or fewer conduit channels other than conduit channels 3012-3014 maybe implemented and are not limited to the placement, size, shape,location, or other attributes of the examples shown and described.

Spacer ring 3000, in some examples, may be formed using materials suchas metal, alloy, plastic, wood, ceramic, or any other type of organic orinorganic substance, without limitation or restriction. Spacer ring 3000may be formed to various dimensions, sizes, and shapes, withoutlimitation or restriction. For example, spacer ring 3000 may besubstantially circular, oval, rectangular, or any other shape, havingedges 3002-3006 between which are formed surfaces 3008-3010. Althoughspacer ring 3000 is shown as being substantially circular, thisimplementation is provided for purposes of exemplary description and isnot intended to be limiting. By using spacer ring 3000, system 700 (FIG.7A) or system 730 (FIG. 7B), for example, may draw power from a powersource for one or more components such as sensors (not shown) placedabove or below a waterline. Power may be drawn or shared with anunderwater lighting fixture (e.g., pool light) secured within anunderwater recess using spacer ring 3000.

In some examples, a lighting fixture may be secured within a recessusing spacer ring 3000 while also permitting conduits to transfer powerand/or data using wires installed in conduits (not shown) passingthrough conduit channels 3012-3014 to provide electrical power and/ordata communication capabilities (e.g., using signaling voltages ofvarying amount, sign, signal waveform, and the like). Transmission ofelectrical signals may include currents for power or voltages used fordata signaling, regardless of whether voltages are categorized as “low,”“line,” or another type or category of voltage (in some examples, “low”voltage may refer to any voltage at or below, for example, 30 voltswhile “line” voltages may be those configured to transmit higher levelsof current for appliances, devices, or other electrical requiringgreater amounts of power)). In other words, conduit channels 3012-3014may be configured to provide channels for conduits (i.e., configured totransmit electrical, optical, or other signals for power or data) ofvarious sizes, shapes, gauge, diameters, or other dimensions, withoutlimitation or restriction.

As shown, spacer ring 3000 may be mounted or otherwise coupled to amounting structure such as a hook adapter (not shown; described below inconnection with hook adapter 3100 (FIGS. 31A-31G)) directly orindirectly coupled to a wall or boundary of a bounded aquaticenvironment (e.g., a pool wall, pond wall, vessel hull, or the like). Insome examples, edges 3002 and 3004 may be outer and inner verticalsurfaces between which may be disposed surfaces 3008-3010, which mayhave different pitches or contours in order to accommodate structuresover which spacer ring 3000 may be placed. For example, spacer ring 3000may be designed, configured, or implemented to “fit” (i.e., placed,disposed, affixed, or the like) over the perimeter of a recess in whicha pool or underwater light is disposed. In other examples, spacer ringmay be disposed over one or more intermediate structures substantiallydisposed about the perimeter of a recess or lighting fixture. Forexample, spacer ring 3000 may be disposed over a bezel that isconfigured to retain or otherwise secure equipment (e.g., lighting,underwater, pool, sensor, or other fixtures or elements (not shown))placed within a recess. Further, interlocks 3016-3022 may be structuralfeatures that are configured to detachably couple or otherwise engage,directly or indirectly, with one or more structural features in order toposition, mount, or secure spacer ring 3000 in a fixed position, forexample, about a recess or opening such as that in which a pool orunderwater light or other electrically-powered apparatus may reside.Further, when spacer ring 3000 is detachably coupled to a hook adapter(not shown), interlocks 3016-3022 may be used with one or more fasteners(not shown), which may be metal, alloy, plastic, wood, adhesive, orother materials that be used to create mechanical, electromagnetic,chemical, or other types of fixtures. In still other examples, spacerring 3000 can also be coupled to a wall or hook adapter (not shown)without using fasteners, but instead by detachably coupling, inserting,or otherwise engaging, mechanically or structurally, one or more ofinterlocks 3016-3022 with another structure formed directly into thewall of a bounded aquatic environment. In other examples, spacer ring3000 and the elements shown may be designed, formed, configured, orimplemented differently and are not limited to the examples shown anddescribed.

FIG. 30B illustrates a rear view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here, arear view of spacer ring 3000 is shown including edges 3002-3004,surfaces 3008-3010, conduit channels 3012-3014, interlocks 3016-3022,edges 3030-3034, and surfaces 3036-3038. In some examples,similarly-named and/or numbered elements may be designed, configured,function, and/or implemented similarly to previously-described elements(e.g., spacer ring 3000 includes edges 3002-3004, surfaces 3008-3010,conduit channels 3012-3014, interlocks 3016-3022, or others). As shownin this rear view of spacer 3000, edges 3002-3004 may be disposed as anouter edge and an inner edge, respectively, of spacer ring 3000, one orboth of which may not only be edges of spacer ring 3000, but alsovertical sides or walls. In some examples, edges 3002-3004, 3030-3034may be used to create surfaces 3006-3008 to provide contoured shapes,surfaces, or features that are configured to receive, for example,features of other structure(s) such as a bezel or outer perimeter of arecess (not shown) when spacer ring 3000 is positioned, disposed,affixed, or otherwise implemented. Although edges 3002-3004, 3030-3034and surfaces 3006-3008 are shown and described in FIG. 30B, the number,type, quantity, and configuration of edges and surfaces may be variedand are not limited to those shown and described, which are provided forpurposes of exemplary description and not intended to be limiting orrestrictive. Further, edges 3030-3034 may be disposed intermediate toedges 3002-3004, forming surfaces 3036-3038 disposed on the underside orrear of spacer ring 3000. In other examples, spacer ring 3000 and theelements shown may be designed, formed, configured, or implementeddifferently and are not limited to the examples shown and described.

FIG. 30C illustrates a top view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here, topview 3040 shows spacer ring 3000 including edges 3002 and 3006, surface3008, and conduit channels 3012-3014. In some examples, similarly-namedand/or numbered elements may be designed, configured, function, and/orimplemented similarly to previously-described elements (e.g., spacerring 3000 includes edges 3002-3004, surfaces 3008-3010, conduit channels3012-3014, interlocks 3016-3022, or others). As shown, conduit channels3012-3014 may be interposed in surface 3008 along the left and rightsides of spacer ring 3000. In other examples, spacer ring 3000 and theelements shown may be designed, formed, configured, or implementeddifferently and are not limited to the examples shown and described.

FIG. 30D illustrates a bottom view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,bottom view 3050 illustrates spacer ring 3000 including edges 3002 and3006 and surface 3008. In some examples, similarly-named and/or numberedelements may be designed, configured, function, and/or implementedsimilarly to previously-described elements (e.g., spacer ring 3000includes edges 3002-3004, surfaces 3008-3010, conduit channels3012-3014, interlocks 3016-3022, or others). Although no conduitchannels (e.g., conduit channels 3012-3014 (FIG. 30A)) are shown, inother examples, one or more conduit channels may be formed in any edgeor surface of spacer ring 3000 to enable transfer of electrical signalsfor power and/or data. In other examples, spacer ring 3000 and theelements shown may be designed, formed, configured, or implementeddifferently and are not limited to the examples shown and described.

FIG. 30E illustrates a right view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,right view 3060 shows spacer ring 3000 including edges 3002 and 3006,surface 3008, and conduit channel 3014. In some examples,similarly-named and/or numbered elements may be designed, configured,function, and/or implemented similarly to previously-described elements(e.g., spacer ring 3000 includes edges 3002-3004, surfaces 3008-3010,conduit channels 3012-3014, interlocks 3016-3022, or others). As shownabove and in connection with the present illustration, edge 3002 may beimplemented having a substantially planar surface in order for spacerring 3000 to be mounted in a flush or substantially flush position overand about the perimeter of a recess or bezel over an access (i.e., thebezel being configured to retain an underwater, pool, or other lightingor powered fixture within a recess) housing an underwater, pool, orother lighting fixture above or below a waterline, or a combinationthereof. In other examples, spacer ring 3000 and the elements shown maybe designed, formed, configured, or implemented differently and are notlimited to the examples shown and described.

FIG. 30F illustrates a left view of an exemplary spacer ring used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,left view 3070 shows spacer ring 3000 having edges 3002 and 3006,surface 3008, and conduit channel 3012. In some examples,similarly-named and/or numbered elements may be designed, configured,function, and/or implemented similarly to previously-described elements(e.g., spacer ring 3000 includes edges 3002-3004, surfaces 3008-3010,conduit channels 3012-3014, interlocks 3016-3022, or others). In otherexamples, spacer ring 3000 and the elements shown may be designed,formed, configured, or implemented differently and are not limited tothe examples shown and described.

FIG. 30G illustrates a perspective view of an exemplary spacer ring usedin analysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,perspective view 3080 is shown including spacer ring 3000 having edges3002-3006, surfaces 3008-3010 and 3082, conduit channels 3012-3014, andinterlocks 3016-3018. In some examples, similarly-named and/or numberedelements may be designed, configured, function, and/or implementedsimilarly to previously-described elements (e.g., spacer ring 3000includes edges 3002-3004, surfaces 3008-3010, conduit channels3012-3014, interlocks 3016-3022, or others). As shown, edges 3004 may beformed in spacer ring 3000 as boundary edges of surface 3082, which maybe a vertical or substantially vertical “wall” or inner surface ofspacer ring 3000. In this example, a “vertical” or “substantiallyvertical” surface such as surface 3082 may be formed orthogonally (orsubstantially orthogonal) to a plane of spacer ring 3000.

As shown here, interlocks 3016-3018 are the “bottom” set of interlockingstructures that are attached, coupled, or molded to the overallstructure of spacer ring 3000. Here, interlocks 3016-3018 may be formedto engage with a mounting or wall bracket or structure such as a hookadapter (described below in greater detail in connection with FIGS.31A-31G) to secure and position spacer ring 3000, whether directly overan access or over, under, or with any intervening structures. In otherexamples, spacer ring 3000 and the elements shown may be designed,formed, configured, or implemented differently and are not limited tothe examples shown and described.

FIG. 31A illustrates a front view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,hook adapter 3100 includes body 3102, mounting holes 3104-3106, base3108, and hook 3110. In some examples, similarly-named and/or numberedelements may be designed, configured, function, and/or implementedsimilarly to previously-described elements (e.g., spacer ring 3000includes edges 3002-3004, surfaces 3008-3010, conduit channels3012-3014, interlocks 3016-3022, or others). As used in the presentexample, hook adapter 3100 may be mounted using, for example, fastenerssuch as screws, bolts, or other mechanical implementations. Hook adapter3100, in some examples, may be used to secure or fasten spacer ring 3000(FIGS. 30A-30G) by engaging hook 3110 with one or more of interlocks3016-3022 (FIGS. 30A-30G). For example, interlocks 3016-3018 (FIG. 30A)may be engaged with hook 3110 when placing spacer ring 3000 adjacent tohook adapter 3100. Hook 3110 provides a retaining structure sufficientto prevent spacer ring 3000 from falling away from a wall, boundary, orother surface against which hook adapter 3100 is mounted. In otherexamples, multiple hook adapters may be implemented to engage multiplesets of interlocks. For example, spacer ring 3000 may be rotatablyplaced over a top and a bottom hook adapter so that, when rotated,interlocks 3016-3018 and 3020-3022 engage with multiple hooks (e.g.,hook 3110) in order to retain or otherwise hold spacer ring 3000 againsta wall, boundary, hull, or other surface on which are mounted orotherwise coupled (directly or indirectly, with or without fasteners)multiple hook adapters (e.g., hook adapter 3100).

In some examples, fasteners may be inserted through mounting holes3104-3106 in order to secure body 3102 to a wall, hull, or otherunderwater boundary, which may or may not be vertically oriented. Inother examples, hook adapter 3100 may be mounted in any orientation andis not limited or restricted to any particular orientation. In stillother examples, other types of materials may be used such as adhesivematerials, chemicals, or other substances to secure (i.e., permanently,semi-permanently, or temporarily mount) hook adapter 3100. As shown,base 3108 extends from body 3102 to provide an appendage or substratefrom which upward tending (in other examples, downward tending) hook3110 extends. The size, shape, design, or configuration of hook adapter3100, body 3102, mounting holes 3104-3106, base 3108, and hook 3110 maybe varied and is not limited to any particular example or description,which are provided for purposes of illustration and exemplaryexplanation. In other examples, hook adapter 3100 and the elements shownmay be designed, formed, configured, or implemented differently and arenot limited to the examples shown and described.

FIG. 31B illustrates a rear view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here, arear view of hook adapter 3120 includes body 3102, mounting holes3104-3106, and base 3108. In some examples, similarly-named and/ornumbered elements may be designed, configured, function, and/orimplemented similarly to previously-described elements (e.g., body 3102,mounting holes 3104-3106, base 3108, hook 3110, or others). Dottedlines, wherever provided, are presented for purposes of illustrating across-sectional view of base 3108 and is not intended to denote anyparticular dimension, function, or structure apart from that describedherein. In some examples, mounting holes 3104-3106 may be varied innumber, size, shape, placement, position, or other attributes and arenot limited to the examples shown and described. For example, multiplemounting holes may be implemented to include more than mounting holes3104-3106. As another example, mounting holes 3104-3106 (or more orfewer mounting holes) may be disposed within body 3102 symmetrically orasymmetrically. Still further, the size of mounting holes 3104-3106 maybe varied to enable smaller or larger diameter fasteners to be used. Inother examples, hook adapter 3120 and the elements shown may bedesigned, formed, configured, or implemented differently and are notlimited to the examples shown and described.

FIG. 31C illustrates a top view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,hook adapter 3130 includes body 3102, base 3108, hook 3110, and lockingrecess 3132. In the examples presented, similarly-named and/or numberedelements may be designed, configured, function, and/or implementedsimilarly to previously-described elements (e.g., body 3102, mountingholes 3104-3106, base 3108, hook 3110, or others). In some examples,locking recess 3132 may be configured to receive one or more ofinterlocks 3016-3022 (FIGS. 30A-30G) in order to secure spacer ring 3000(FIGS. 30A-30G) to hook adapter 3130, which may be mounted against asurface (e.g., pool, pond, or any other type of boundary wall used at awhole or partial perimeter of an aquatic environment or body of water orliquid). As shown, locking recess 3132 may also be designed, configured,and implemented to align spacer ring 3000 (FIGS. 30A-30G) when securedto hook adapter 3130. Hook adapter 3130, in some examples, may be usedto align and secure spacer ring 3000 (FIGS. 30A-30G) against a wall,boundary, or other surface to prevent detachment while permitting thepassage of one or more conduits, as described above. In other examples,hook adapter 3130 and the elements shown may be designed, formed,configured, or implemented differently and are not limited to theexamples shown and described.

FIG. 31D illustrates a bottom view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here, abottom view of hook adapter 3140 includes body 3102, base 3108, hook3110, and locking recess 3132. In the examples presented,similarly-named and/or numbered elements may be designed, configured,function, and/or implemented similarly to previously-described elements(e.g., body 3102, mounting holes 3104-3106, base 3108, hook 3110, orothers). In other examples, hook adapter 3140 and the elements shown maybe designed, formed, configured, or implemented differently and are notlimited to the examples shown and described.

FIG. 31E illustrates a right view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,hook adapter 3150 includes body 3102, base 3108, hook 3110, lockingrecess 3132, and edges 3152-3154. In the examples presented,similarly-named and/or numbered elements may be designed, configured,function, and/or implemented similarly to previously-described elements(e.g., body 3102, mounting holes 3104-3106, base 3108, hook 3110, orothers). As shown, hook adapter 3150 is shown from a right-side view,including edges 3152-3154, which are rounded, but may be shapeddifferently (e.g., orthogonally without a radius of curvature, with agreater or less radius of curvature, or others, without limitation orrestriction). Locking recess 3132 is also shown from a cross sectionalview using dotted lines to illustrate penetration through base 3108.Here, locking recess 3132 may be formed to be fully penetrative of base3108 as shown. As used herein and in other drawings described throughoutthis Detailed Description, dotted lines are provided for purposes ofillustrating examples provided and are neither limiting nor restrictiveto a singular implementation. In other examples, locking recess 3132 maybe implemented as a recess or “pocket” that is configured to seatinterlocks 3016-3022 while only partially being recessed into base 3108.In other words, locking recess 3132 may formed as a complete passagethrough base 3108 or as a partial recess therein. In other examples,hook adapter 3150 and the elements shown may be designed, formed,configured, or implemented differently and are not limited to theexamples shown and described.

FIG. 31F illustrates a left view of an exemplary hook adapter used inanalysis and deep learning modeling of sensor-based detection data inbounded aquatic environments using underwater powered systems. Here,hook adapter 3160 is shown from a left side view, including body 3102,base 3108, hook 3110, locking recess 3132, and edges 3152-3154. In theexamples presented, similarly-named and/or numbered elements may bedesigned, configured, function, and/or implemented similarly topreviously-described elements (e.g., body 3102, mounting holes3104-3106, base 3108, hook 3110, or others). In other examples, hookadapter 3160 and the elements shown may be designed, formed, configured,or implemented differently and are not limited to the examples shown anddescribed.

FIG. 31G illustrates a perspective view of an exemplary hook adapterused in analysis and deep learning modeling of sensor-based detectiondata in bounded aquatic environments using underwater powered systems.Here, hook adapter 3170 is shown from a perspective, including body3102, base 3108, hook 3110, locking recess 3132, and edges 3152-3154. Inthe examples presented, similarly-named and/or numbered elements may bedesigned, configured, function, and/or implemented similarly topreviously-described elements (e.g., body 3102, mounting holes3104-3106, base 3108, hook 3110, or others). Similar to locking recess3132, mounting holes 3104-3106 are shown as fully penetrative of body3102. In other examples, mounting holes 3104-3106 may also be threaded,counter threaded, or otherwise configured to receive fasteners that,when inserted into mounting holes 3104-3106, engage body 3102 to providestructural support and alignment when mounting, affixing, or otherwisecoupling hook adapter 3170. In other examples, hook adapter 3170 and theelements shown may be designed, formed, configured, or implementeddifferently and are not limited to the examples shown and described.

FIG. 32 illustrates a rear view of an exemplary spacer ring coupled to ahook adapter for use in analysis and deep learning modeling ofsensor-based detection data in bounded aquatic environments usingunderwater powered systems. Here, a rear view of spacer ring 3200 isshown including edges 3002-3004, surfaces 3008-3010, conduit channels3012-3014, interlocks 3016-3022, edges 3030-3034, surfaces 3036-3038,and hook adapter 3100. In some examples, similarly-named and/or numberedelements may be designed, configured, function, and/or implementedsimilarly to previously-described elements (e.g., spacer ring 3000includes edges 3002-3004, surfaces 3008-3010, conduit channels3012-3014, interlocks 3016-3022, hook adapter 3100, or others). Asshown, in some examples, spacer ring 3200 may be implemented by couplinghook adapter 3100 (FIGS. 31A-31G) using, for example, fasteners ofvarious sorts, types, dimensions, and configurations. In some examples,hook adapter 3100 may be coupled to spacer ring directly or indirectly,the latter of which may have one or more intermediate layers (e.g., anintermediate ring made of various types of materials such as metal,alloy, plastic, ceramics, or others, without limitation or restriction)disposed between hook adapter 3100 and spacer ring 3200. Interveningmaterials may be used for various types of function or structuralpurposes such as providing structural reinforcement, mechanical spacing,electrical bonding or grounding, or others, without limitation orrestriction. As shown, hook adapter 3100 may be coupled to spacer ringso as to dispose a base and a hook (e.g., base 3108 (FIGS. 31A-G), hook3110 (FIGS. 31A-31G)) to engage a mounting apparatus (not shown) on awall or other boundary of an aquatic environment. In other examples,spacer ring 3200 with hook adapter 3100 and the elements shown may bedesigned, formed, configured, or implemented differently and are notlimited to the examples shown and described.

Although the foregoing examples have been described in some detail forpurposes of clarity of understanding, the above-described inventivetechniques are not limited to the details provided. There are manyalternative ways of implementing the above-described inventiontechniques. The disclosed examples are illustrative and not restrictive.

What is claimed:
 1. A system, comprising: a sensor disposed in a recessproximate to a waterline associated with a body of water; and aprocessor configured to capture an image from the sensor, the sensorbeing housed in a structure disposed in the recess and electricallycoupled to a light, the recess being configured to receive a spacer ringconfigured to detachably couple to a hook adapter secured to a boundarywall associated with the body of water, the spacer ring also beingconfigured to provide a channel and the processor also being configuredto convert the image into data digitally encoded by the processor, toevaluate the data to separate background data from foreground data, togenerate tracking data from the data after the background data isremoved, the tracking data being evaluated to determine whether a heador a body are detected by comparing the tracking data to classifierdata, to track the head or the body relative to the waterline if thehead or the body are detected in the tracking data, and to determine astate associated with the head or the body, if the head or the body isdetected, the state being associated with state data, the state databeing used to determine a drowning state.
 2. The system of claim 1,wherein the channel is configured to receive a plurality of conduits, atleast one of the plurality of conduits having one or more wiresconfigured to transmit an electrical signal.
 3. The system of claim 1,wherein the channel is configured to provide access between an innerarea of the structure and an outer area of the structure.
 4. The systemof claim 1, wherein the channel is configured to receive a plurality ofconduits, at least one of the plurality of conduits having one or morecables configured to transmit a voltage.
 5. The system of claim 1,wherein the channel is configured to receive a plurality of conduits, atleast one of the plurality of conduits having one or more cablesconfigured to transmit data.
 6. The system of claim 1, wherein thespacer ring is configured to electrically bond the structure when thespacer ring is secured to the boundary wall using the hook adapter. 7.The system of claim 1, wherein the spacer ring is configured toelectrically bond the structure when the spacer ring is secured to thehook adapter using a fastener substantially comprised of an electricallyconductive alloy.
 8. The system of claim 1, wherein the spacer ring isconfigured to be disposed between the recess and a bezel securing thestructure within the recess.
 9. The system of claim 1, wherein thespacer ring is disposed circumferentially around an opening to therecess using the hook adapter.
 10. The system of claim 1, wherein thechannel is configured to receive a plurality of conduits, at least oneof the plurality of conduits having one or more wires configured totransmit an electrical signal.
 11. The system of claim 1, wherein theconduit channel is formed in the spacer ring.
 12. An apparatus,comprising: a light disposed substantially within a recess of a boundarywall, the light being disposed substantially underwater and configuredto receive power using a conduit; and a spacer ring disposedcircumferentially about an opening associated with the recess, thespacer ring being configured to secure the light within the recess andto provide a channel formed in the spacer ring, the channel beingconfigured to receive the conduit.
 13. The apparatus of claim 12,wherein the recess is formed in the boundary wall.
 14. The apparatus ofclaim 12, wherein the channel is partially formed in the outer edge ofthe spacer ring.
 15. The apparatus of claim 12, wherein the channel isformed in the spacer ring, the channel being configured to permit theconduit to provide an electrically contiguous path between an endpointin the recess and another endpoint substantially outside of the recessand the spacer ring.
 16. The apparatus of claim 12, wherein the light isan endpoint configured to be electrically coupled by the conduit toanother endpoint.
 17. The apparatus of claim 12, wherein the conduit isconfigured to provide an electrical coupling to the light and a datacoupling to a sensor disposed within the recess.
 18. The apparatus ofclaim 12, wherein the conduit is configured to provide an electricalcoupling to the light and a data coupling to a sensor disposedsubstantially outside of the recess.
 19. The apparatus of claim 12,wherein the spacer ring has a plurality of tabs formed in substantiallyin inner periphery of the spacer ring, one or more of the plurality oftabs being configured to secure the spacer ring to the boundary wallwhen the one or more of the plurality of tabs is structurallyinterlocked with a hook adapter.
 20. A system, comprising: a structureconfigured to house within a recess an electrical element; a sensorconfigured to capture an image; a light electrically coupled to thestructure; and a spacer ring configured to detachably couple to a hookadapter and to provide a channel configured to pass a conduit from theelectrical elements to another electrical element outside the recess.